即使在方法中引用了此数组界限,我仍然出现错误“线程“主”中的异常java.lang.ArrayIndexOutOfBoundsException:索引0超出长度0的界限”。
`public class USCrimeLibrary
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
USCrimeObject crimeObject = new USCrimeObject(args[0]); `
和参考对象:
`public class USCrimeObject {
private Crime[] crimes;
String fileName = "/Users/jpl/Developer/Java/CMIS141/WK8/Crime.csv";
public USCrimeObject(String fileName) {
this.crimes = new Crime[20];
readFile(fileName);
}`
答案 0 :(得分:0)
首先,您必须在运行程序时传递参数。
但是从您的代码来看,我认为您对代码进行微小的更改就可以使其可执行,而无需在运行程序时传递参数。
将构造函数USCrimeObject
更改为
public USCrimeObject() {
this.crimes = new Crime[20];
readFile(fileName);
}
并从主类创建没有参数的USCrimeObject
USCrimeObject crimeObject = new USCrimeObject();