0

Java プログラムに問題があります。プログラムが完全にスキップする while ループがあります。実行されないwhileループ内の文を印刷しようとしてテストしたため、whileループをスキップすると確信しています(ループの残りの部分もそうではありません)。プログラムをコンパイルまたは実行してもエラーは発生せず、何が問題なのか本当にわかりません。誰かが私を助けることができれば、それは素晴らしいことです. 期待どおりに実行されるこれと非常によく似たwhileループがあるため、これが機能しないのは奇妙です。

私のプログラムはとても長いので、while ループだけを書きます。この while ループはメソッド内にあります (このループのみを含む)。(私は Scanner に似た easyIO を使用していますが、それほど複雑ではないバージョンです)

    int i = 0;
    In file = (infile); //Infile is declared earlier in the program 
    int [][] array2D = new int [unique][unique];

    String word1 = file.inWord();

    while (file.hasNext()) {
        String word2 = file.next();
        word1 = word2;
    }
4

1 に答える 1

2

「infile」はコードの前半で宣言されていると言うので、コードの前半でファイルを既に反復処理している可能性はありますか? その場合、ポインターが既にファイルの末尾にある場合、「file」に「infile」と同じ参照を割り当てているため、file.hasNext()明らかに false と評価されます。

于 2013-10-09T21:55:54.513 に答える