int number = scanner.nextInt ();如果我放入括号if并写出错误的输入,则会出现问题,但效果很好。
但如果我不在 之外写它if,当我输入错误的输入时,它会给出以下错误
Exception in thread "main" java.util.InputMismatchException
at java.base/java.util.Scanner.throwFor(Scanner.java:939)
at java.base/java.util.Scanner.next(Scanner.java:1594)
at java.base/java.util.Scanner.nextInt(Scanner.java:2258)
at java.base/java.util.Scanner.nextInt(Scanner.java:2212)
at UserInput.main(UserInput.java:15)
代码:
import java.util.Scanner;
public class UserInput {
public static void main(String[] args) {
int Sum=0, counter = 0,no=1;
Scanner scanner;
scanner = new Scanner(System.in);
do {
System.out.println("Enter number #" + no + " = ");
boolean result = scanner.hasNextInt();
int number = scanner.nextInt();
if(result == true)
{
counter = counter + 1;
Sum = Sum + number;
no = no+1;
}
else
{
System.out.println("Invalid Input");
}
scanner.nextLine();
}while(counter<10);
System.out.println("Sum = " + Sum );
scanner.close();
}
}
Smart猫小萌
神不在的星期二
相关分类