我正在尝试搜索文件以打印出分数。这就是我所拥有的:
while (input.hasNextLine()) {
String record = input.nextLine();
String[] field = record.split(" ");
if(field[1].equals(targetState)) {
System.out.print(field[0] + ": ");
System.out.println(field[2]);
}
}
文件中的数据如下所示:
2007,Alabama,252
当我运行此代码时,我收到java.lang.ArrayIndexOutOfBoundsException
错误。
我只是想知道代码有什么问题
由于
答案 0 :(得分:4)
您需要使用逗号而不是空格进行拆分。改变这个
String[] field = record.split(" ");
到
String[] field = record.split(",");
由于输入字符串中没有空格,因此它没有被拆分,因此输出数组没有多个项目,导致ArrayIndexOutOfBoundException