私はいくつかの助けが必要です。ここでの実際のケースは、プログラムIコードがいくつかのテキスト文書を読み込み、各テキスト文書の単語数が異なっていることです。私は現在のテキスト文書の数と各テキスト文書の単語数に基づいて動的なサイズを提供するので、これらの単語を2D ArrayListに保持したいと思います。私の2D ArrayList出力は累積値を与えますか?
しかし、いくつかのテストが終了した後、私が期待した通りの出力が得られません。簡単にするために、このサンプルコードを参考にしています。 2D ArrayListの使い方は、実際のケースで使用するのと同じです。
ArrayList<List<String>> twoDWords = new ArrayList<List<String>>();
List<String> oneDword = new ArrayList<String>();
String word = "";
String[] words = new String[5];
System.out.println("Want like these(Using 2D ArrayList):");
for(int i = 0; i< 5; i++)
{
System.out.print("Array - "+i +": ");
word += "myArray ";
words[i] = word;
System.out.println(word);
}
System.out.println("\nBut Get these output:");
for(int i = 0; i< 5; i++)
{
oneDword.add(words[i]);
twoDWords.add(oneDword);
//oneDword.clear();
}
for(int i = 0; i< twoDWords.size(); i++)
{
System.out.print("Array - "+i +": ");
for(int j = 0; j< twoDWords.get(i).size(); j++)
{
System.out.print(twoDWords.get(i).get(j)+" ");
}
System.out.println("");
}
それだけ繰り返し、最新の累積値を配るような出力が見えます。コードでわかるように、私はclear()メソッドを使って配列をリセットしようとしますが、空の値を返します。
誰かがこの問題で私を助けてくれることを願っています。ありがとうございます〜