-3
我已經安裝了Gradle
,我試圖從文件中讀取一些數據。java錯誤是:java.lang.ArrayIndexOutOfBoundsException:1
該文件是
A; 1;2
B;2;3
C;4;5
H;5;6
.
.
.
,我試圖做一些特別的前5個記錄
InputStream inputFileStream = Main.class.getResourceAsStream("/inputFile.txt");
Scanner scanner = new Scanner(inputStream);
int counter = 5;
while (scanner.hasNext()) {
String line = scanner.nextLine();
String[] array;
if(counter>=0)
{
array = line.split(";");
System.out.println(line);
// System.out.println("Hero is: "+array[0]+" "+array[1]+" "+array[2]);
counter--;
}
}
的問題是,在一線
System.out.println("Hero is: "+array[0]+" "+array[1]+" "+array[2]);
我面對帶有錯誤:
java.lang.ArrayIndexOutOfBoundsException: 1
我知道,這意味着我要求獲得數組以外的值,但我不知道它爲什麼會發生? 和我該如何解決它?
對於downvoters:我使用System.out.println(array-length);
之前和示數行之後,但奇怪的是,當我有示數線沒有打印?
也許分裂並沒有給予更多的單一回報。嘗試打印'array.length'來查看它實際上有多少個元素。 – KevinO
這是一個過於樂觀的分割,你認爲發生了什麼「。」行呢? – 2016-04-03 21:22:18
另外,實際上,學會使用調試器,或者至少在代碼中添加System.out.println行,以查看變量包含的內容以及問題的來源。你不應該需要我們來診斷那種問題。 –