【发布时间】:2016-12-09 18:12:11
【问题描述】:
我是 java 新手,我正试图找出我的编码出了什么问题。每次我输入一个字母它都会崩溃?如下图。
读入一个标记
是的
请输入一个数字错误
输入下一个学生分数
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:864)
at java.util.Scanner.next(Scanner.java:1485)
at java.util.Scanner.nextInt(Scanner.java:2117)
at java.util.Scanner.nextInt(Scanner.java:2076)
at histogram.Histogram.main(Histogram.java:95)
bC:\Users\Chevon\AppData\Local\NetBeans\Cache\8.1\executor-snippets\run.xml:53: Java returned: 1
BUILD FAILED (total time: 2 seconds)
这是我的代码:
int cat1 = 0;// Category 1
int cat2 = 0;// Category 2
int cat3 = 0;//Category 3
int cat4 = 0;//Category 4
int mark = 0;// Total marks that the user enters
int counter = 0;
double Average = 0;
int Total_mark = 0;
int pass=0;
int highest = 0;
int lowest = 101;
Scanner input = new Scanner(System.in);
System.out.println("Read in a mark");
try{
mark= input.nextInt();
System.out.println("The number you enter is "+mark);
}catch(InputMismatchException e){
System.out.println("Error plz enter a number");
}
while(mark<0){
System.out.println("Enter a positive integer");
mark = input.nextInt();
}
我希望是这样的
读入标记
是的
请输入一个数字错误
输入下一个学生分数
4
【问题讨论】:
-
在你说“读入标记”之后,你认为
nextInt()会做什么?
标签: java validation exception input try-catch