我需要一個方法添加到我的猜謎遊戲,我做了一個前一陣子。該方法應返回它們輸入的值,但應使用循環來要求重新輸入,直到指定了這兩個值中的一個值。 另外,如果用戶輸入一個單詞而不是一個整數,它應該要求一個數字。我知道我需要使用字符串而不是int。我只是無法弄清楚這一點。以下是我迄今爲止:猜謎遊戲添加一個方法
import java.util.Random;
import java.util.Scanner;
class GuessNumber {
static Random rand = new Random();
static Scanner scan = new Scanner(System.in);
static int number;
public static void main(String[] args) {
playGame();
}
public static void playGame() {
number = rand.nextInt(100) + 1;
System.out.println("Guess the number between 1 and 100");
while (true) {
int guess = scan.nextInt();
if (guess < number) {
System.out.println("Higher!");
} else if (guess > number) {
System.out.println("Lower!");
} else if (guess == number) {
System.out.println("Correct!");
Scanner scan2 = new Scanner(System.in);
System.out.println("do you wanna play again?[Y/N]");
String val = scan2.next();
if (val.equalsIgnoreCase("Y")) {
playGame();
} else {
break;
}
}
}
}
}
...而且?這裏有問題嗎? – Qix 2014-10-08 01:03:46
@Qix這顯然是猜謎遊戲是自我的一部分...... – MadProgrammer 2014-10-08 01:06:00
如果你知道你將不得不使用一個字符串,而不是一個int的,開始通過重寫代碼來反映你(正確地)認識你」重新需要。然後使用您的Internet Search Fu來了解String的parseInt()方法。請花點時間閱讀您發現的內容,並考慮如何使用parseInt()將字符串輸入轉換爲您可以比較的數字。或者,查看String的compare()方法,查看一個字符串是按字典順序更高,更低還是與另一個字符串相同。 – MarsAtomic 2014-10-08 01:25:08