リストのエラーについて
LinkedList<String[]> ll=new LinkedList<String[]>();
String[] s1=new String[2];
s1[0]="a";s1[1]="a";
ll.add(s1);
s1[0]="b";s1[1]="b";
ll.add(s1);
s1[0]="c";s1[1]="c";
ll.add(s1);
Iterator iterator=ll.iterator();
while(iterator.hasNext()){
String[] s=(String[])iterator.next();
System.out.println(s[0]+"==="+s[1]);
}
リストに保存されているのはアドレスで、上記の場合リストに挿入された3つの値は同じアドレスに対応します
出力結果は次のとおりです.
c===c
c===c
c===c
に改心
LinkedList<String[]> ll=new LinkedList<String[]>();
String[] s1=new String[2];
s1[0]="a";s1[1]="a";
ll.add(s1);
s1=new String[2];
s1[0]="b";s1[1]="b";
ll.add(s1);
s1=new String[2];
s1[0]="c";s1[1]="c";
ll.add(s1);
Iterator iterator=ll.iterator();
while(iterator.hasNext()){
String[] s=(String[])iterator.next();
System.out.println(s[0]+"==="+s[1]);
}
出力結果は次のとおりです.
a===a
b===b
c===c