我想将扫描仪的输入放入我的阵列,但是我收到了错误:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
我的代码:
public static void main(String[] args)
{
Scanner scanInput = new Scanner(System.in);
Random randomGen = new Random();
String captureString[] = new String[] {};
System.out.println("Please enter some words..");
captureString[0] = scanInput.next();
captureString[1] = scanInput.next();
captureString[2] = scanInput.next();
System.out.println("You entered: " + captureString[0] + " " + captureString[1] + " " + captureString[2]);
}
}
我不能使用循环或条件(任务),所以这个数组是否可行?或者我应该只使用变量,只是因为我想使用数组是因为我想在事后进行一些字符串操作,这对变量来说有点尴尬
答案 0 :(得分:3)
因为你得到三个输入,我建议。将其更改为String captureString[] = new String[3];
。这是因为,Arrays需要在使用之前进行初始化。由于您已初始化没有值。它中没有任何索引。因此,当您访问索引0
时,您将获得ArrayIndexOutOfBoundsException
。希望它澄清一下!
答案 1 :(得分:2)
您的阵列captureString
的容量为零。你不能在那里添加元素。 Java数组不能增长,如果内容打算增长,请使用ArrayList