使用scanner.nextFloat java的java.util.InputMismatchException

使用scanner.nextFloat java的java.util.InputMismatchException,java,java.util.scanner,Java,Java.util.scanner,我有一个while条件,当文本文件有下一个float(scanner.hasNextFloat())时从该文件读取,并将该float分配给数组。但是,我得到一个java.util.InputMismatchException错误 这是我的代码: int index = 0; DistanceEventList.resetCurrent(); String a = "list"; while (scanner.hasNextLine()) { if

我有一个while条件,当文本文件有下一个float(scanner.hasNextFloat())时从该文件读取,并将该float分配给数组。但是,我得到一个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()上得到输入不匹配异常,而另一个没有

从文本文件:

65.88782541429404
53.37054214310881
61.51132170748031
60.83640164272022
67.7342725889695
list
65.82330621202783
53.57119546501669

当您遇到“列表”行时,请在中提前感谢

我将添加
while(DistanceEventList.endList()&scanner.hasNextFloat())

while (DistanceEventList.endList()){
            Float NextScore = scanner.nextFloat();
            DistanceEventList.getCurrent().distance[index] = NextScore;
            DistanceEventList.nextCurrent();}