gpt4 book ai didi

java - 限制数组

转载 作者:行者123 更新时间:2023-12-02 00:03:57 26 4
gpt4 key购买 nike

这是我下面的代码,我收到 java.lang.IndexOutOfBoundsException 并且无法修复它?我应该阻止错误出现,因为文件中有 100 多个名字!

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class ArrayPractice1 {
public static void main(String[] args) throws FileNotFoundException
{

String[] names = new String[100];
Scanner scan = new Scanner(new File("names.txt"));
int index = 0;

while (scan.hasNext()){
names[index]=(scan.nextLine());
index++;
}
for(int i = 0; i <index -1; i++){
System.out.println(names[i]);
}

}

}

最佳答案

您没有使用ArrayList字符串,您正在使用一个普通的字符串数组。似乎您从 scan.hasNext() 获取了超过 100 个项目,因此您最终尝试访问 names[100] 并获得您描述的异常
相反,你可以使用这个:

ArrayList<String> names = new ArrayList<String>();

然后

while (scan.hasNext()){
names.add(scan.nextLine());
}

您不必担心事先知道确切的尺寸

关于java - 限制数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14264956/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com