java.util.InputMismatchException 使用 scanner.nextFloat JAVA
java.util.InputMismatchException using scanner.nextFloat JAVA
我有一个 while 条件,当文件有下一个浮点数 (scanner.hasNextFloat()) 时从文本文件读取并将浮点数分配给数组。但是,我收到 java.util.InputMismatchException 错误。
这是我的代码:
int index = 0;
DistanceEventList.resetCurrent();
String a = "list";
while (scanner.hasNextLine()) {
if (scanner.hasNextFloat()){
DistanceEventList.nextCurrent();
while (DistanceEventList.endList()){
Float NextScore = scanner.nextFloat();
DistanceEventList.getCurrent().distance[index] = NextScore;
DistanceEventList.nextCurrent();}
DistanceEventList.resetCurrent();
index ++;}
else if (scanner.nextLine().equals("list")){
continue;
}}
上面出现了错误,我修改了一些东西来检查错误在哪里 运行 这段代码:
int index = 0;
DistanceEventList.resetCurrent();
String a = "list";
while (scanner.hasNextLine()) {
if (scanner.hasNextFloat()){
System.out.println(scanner.nextFloat());}
else if (scanner.nextLine().equals("list")){
continue;}
}
我在这里遗漏了什么吗?我无法弄清楚为什么一个人在 scanner.nextFloat() 上得到输入 InputMismatchException 而另一个人没有。
从文本文件中提取:
65.88782541429404
53.37054214310881
61.51132170748031
60.83640164272022
67.7342725889695
list
65.82330621202783
53.57119546501669
提前致谢
在你遇到 "list" 行的时候。
while (DistanceEventList.endList()){
Float NextScore = scanner.nextFloat();
DistanceEventList.getCurrent().distance[index] = NextScore;
DistanceEventList.nextCurrent();}
我会加while (DistanceEventList.endList() && scanner.hasNextFloat())
我有一个 while 条件,当文件有下一个浮点数 (scanner.hasNextFloat()) 时从文本文件读取并将浮点数分配给数组。但是,我收到 java.util.InputMismatchException 错误。
这是我的代码:
int index = 0;
DistanceEventList.resetCurrent();
String a = "list";
while (scanner.hasNextLine()) {
if (scanner.hasNextFloat()){
DistanceEventList.nextCurrent();
while (DistanceEventList.endList()){
Float NextScore = scanner.nextFloat();
DistanceEventList.getCurrent().distance[index] = NextScore;
DistanceEventList.nextCurrent();}
DistanceEventList.resetCurrent();
index ++;}
else if (scanner.nextLine().equals("list")){
continue;
}}
上面出现了错误,我修改了一些东西来检查错误在哪里 运行 这段代码:
int index = 0;
DistanceEventList.resetCurrent();
String a = "list";
while (scanner.hasNextLine()) {
if (scanner.hasNextFloat()){
System.out.println(scanner.nextFloat());}
else if (scanner.nextLine().equals("list")){
continue;}
}
我在这里遗漏了什么吗?我无法弄清楚为什么一个人在 scanner.nextFloat() 上得到输入 InputMismatchException 而另一个人没有。
从文本文件中提取:
65.88782541429404
53.37054214310881
61.51132170748031
60.83640164272022
67.7342725889695
list
65.82330621202783
53.57119546501669
提前致谢
在你遇到 "list" 行的时候。
while (DistanceEventList.endList()){
Float NextScore = scanner.nextFloat();
DistanceEventList.getCurrent().distance[index] = NextScore;
DistanceEventList.nextCurrent();}
我会加while (DistanceEventList.endList() && scanner.hasNextFloat())