0

アーカイブ ファイルを読み取って配列に渡そうとしていますが、配列 [0] にアクセスしようとすると Null Pointer Exception が発生し続けます。Javaに配列[0]を印刷するように依頼すると、nullが表示されます。これは私がテキストファイルを読む方法です:

int lines= 0;
while(s1.hasNext()) {String line=s1.next(); lines ++; } // The number of lines


int i= 0;

char [][] array= new char [lines][]; 
if (f.exists()) {
while (s1.hasNext()) {
String line= s1.next(); 

int m = line.length();

    for (int j = 0; j < m; j++) {
        array[i][j]=line.charAt(j);
    }

  i++;

} 

}
4

1 に答える 1

0

array[0]そのためにメモリを割り当てていないnullためです。

さらにいくつかの問題があります。

最初のループはファイル全体を読み取り、それが終了するとを返すため、 2 番目のwhile(s1.hasNext())ループは実行されません。したがって、2 番目のループは実行されません。s1.hasNext()false

arraylines配列の数で開始されcharますが、どの配列も初期化されていません。だから、それらはすべてですnull。それらのいずれかにアクセスしようとすると、確かにNullPointerException!

于 2012-11-10T14:45:25.757 に答える