This question already has answers here:
How to check if a String is numeric in Java
(39个答案)
6年前关闭。
我编写了一个程序,要求用户输入0到8之间的数字,如果不是数字,则会出现一条消息,要求输入数字。如果输入字母,则在下一行将显示“请输入数字”。
我该怎么做呢?如果大于8,则保持8;如果小于0,则保持0。
更新:
这没有用,我在做什么错?
(39个答案)
6年前关闭。
我编写了一个程序,要求用户输入0到8之间的数字,如果不是数字,则会出现一条消息,要求输入数字。如果输入字母,则在下一行将显示“请输入数字”。
我该怎么做呢?如果大于8,则保持8;如果小于0,则保持0。
if (number >= 8) {
number = 8;
} else if (number <= 0) {
number = 0;
}
更新:
System.out.println("Enter The Number you want:<0 - 8> ");
number = in.nextInt(); \\ in is the name of scanner
try {
if number = in.nextInt();
if(number >= 8) {
number = 8;
} else if (number <= 0) {
number = 0;
}
} catch (NumberFormatException e) {
System.out.println("Enter a number");
}
这没有用,我在做什么错?
最佳答案
您可以使用Scanner
类从System.in
读取并检查字符串是否为数字:
import java.util.Scanner;
import java.util.InputMismatchException;
Scanner sc = new Scanner(System.in);
try {
int i = sc.nextInt();
} catch (InputMismatchException exc) {
System.out.println("not a number");
}