我是一個新的人類學習代碼!我需要一個Java掃描器'重置'無效字符修復
我的掃描儀出了問題,我需要它對無效字符進行「重置」。
我的代碼:
public class Lemonade {
static int m = 150;
private static Scanner scan;
public static void main(String[] args) {
int day = 1;
for(int gameover = m; gameover > 0; day++) {
int Random = (int) (Math.random() * 100);
if(Random <= 25) {
System.out.println("Great Chance!");
System.out.println("--------------------------------");
}
else if(Random <= 50) {
System.out.println("Good Chance!");
System.out.println("--------------------------------");
}
else if(Random <= 75) {
System.out.println("Bad Chance!");
System.out.println("--------------------------------");
}
else if(Random <= 100) {
System.out.println("Awful Chance!");
System.out.println("--------------------------------");
}
int count = 0;
int none = 0;
scan = new Scanner(System.in);
System.out.println("Enter a number between 0 and " + m + "!");
count = scan.nextInt();
if(count >= none && count <= m) {
System.out.println("You entered " + count + "!");
System.out.println("--------------------------------");
day = day + 1;
m = m - count;
System.out.println("Day " + day);
}
else {
System.out.println("Enter a number between 0 and " + m + ".");
count = scan.nextInt();
}
}
}
}
現在是我的問題如何得到這個「重置」的無效字符像「F」,如掃描儀只接受數字。
感謝您的幫助!
你需要的是next()的調用,它讀取並放棄掃描器中的任何字符串。 –
可能是一個循環,比如'for'或'while',你只是想讀更多的輸入,直到用戶輸入正確的東西。這不是一個真正的「重置」,只是繼續閱讀。 – markspace