2012-10-03 44 views
1

`我剛剛在java中完成了猜謎遊戲,但是現在我需要爲這個遊戲創建一個高端核心,即使在代碼停止之後(即使用eclipse),它也會存儲名稱,時間和猜數。任何人都可以用高分表幫助我嗎?這是遊戲:如何在Java中爲猜謎遊戲創建高分表?

import java.util.*; 

public class Game { 

public static void main (String[]args){ 
    Game guessing = new Game(); 
    guessing.start(); 

} 
public void start() { 

    System.out.println("Welcome to guessing game!"); 
    System.out.println("Please enter the number between 1 and 1000"); 

    Scanner input = new Scanner(System.in); 
    String y = "yes"; 
    String n = "no";  
    String playerName; 
    String currentGuess; 
    String quit = "quit"; 
    int tries = 0; //number of times player guessed 
    int guess = 0; //number that player inputs 
    long startTime = System.currentTimeMillis(); //start timer after first guess 
    int randomNumber = (int) (Math.random() * 999 + 1); // generating random number 
    System.out.println(randomNumber);  // to be deleted after game is finished 
    currentGuess = input.nextLine(); 


do{ 


    if (currentGuess.matches("[0-9]+")) { //if input is non-numeric value, show message 
     int numericInput = Integer.parseInt(currentGuess); 
    } 
    else { 
    System.out.println("You have enetered non-numeric value,please try again"); 
    currentGuess = input.nextLine(); 
    continue; //allows to enter non-numeric values multiple times without crash 
    } 

    guess = Integer.parseInt(currentGuess); 


    if(guess<1 || guess>1000){ //if the input number is out of range 
     System.out.println("The number is out of range! Please try again"); 
     currentGuess = input.nextLine(); 
     continue; 
    } 

    if (guess>randomNumber){ 
     System.out.println("Oops,too high!"); 
     currentGuess = input.nextLine(); 
     tries++; 
    } 
    else if (guess<randomNumber){ 
     System.out.println("Sorry, to low!"); 
     currentGuess = input.nextLine(); 
     tries++; 
    } 



    if(currentGuess.equalsIgnoreCase(quit)){ 
     System.out.println("*****Thanx for playing! See you next time!*****"); 
    } 

    if (guess==randomNumber){ 
     tries++; 
     long endTime = System.currentTimeMillis();//stop the timer after number is guessed   correctly 
     long gameTime = endTime - startTime; //display game time after input number==random number 
     System.out.println("Well done! You won the game in " + tries + " guesses " + "and " + gameTime/1000 + " seconds!"); 
     System.out.println("Please enter your name: "); 
     playerName = input.nextLine(); //input for player name 
     System.out.println("Would you like to play again? y/n..."); 
       currentGuess = input.nextLine(); 
       }        /*input for "yes" or "no".. 
                *MUST type "yes" or "no"! instead of "y" or "n"!!*/ 

    if (currentGuess.equalsIgnoreCase(n)){ 
     System.out.println("******See you next time"); 

    } 

    if (currentGuess.equalsIgnoreCase(y)) { 
     start(); 

    } 
    } 

while(guess!=randomNumber && !currentGuess.equalsIgnoreCase(quit)); /*keep running the loop until input 
                   *equals random number, or until input equals 
                   * "quit" */ 


} 
} 
+2

您可以將結果保存到用戶目錄中的txt文件中。當你的程序啓動時,你可以在初始化程序時讀取它。 http://www.roseindia.net/java/beginners/WriteTextFileExample.shtml – sgpalit

+1

@sgpalit我真的很想將您的評論複製到答案中......只是在開玩笑,你爲什麼不那樣做? – Gabber

+0

@Gabber我做到了:)) – sgpalit

回答