我正在尝试创建字符串数组的数组列表。完成后,我希望数组列表如下所示:
[0,0], [0,1], [1,0], [1,1,]
我尝试定义一个数组,然后将其添加到数组列表中。然后重新定义一个数组,再次添加。但数组列表似乎只包含最后一个条目。看一看:
String[] t2 = new String[2];
ArrayList<String[]> list2 = new ArrayList<String[]>();
t2[0]="0";
t2[1]="0";
list2.add(t2);
t2[0]="0";
t2[1]="1";
list2.add(t2);
t2[0]="1";
t2[1]="0";
list2.add(t2);
t2[0]="1";
t2[1]="1";
list2.add(t2);
for (String[] tt : list2)
{
System.out.print("[");
for (String s : tt)
System.out.print(s+" ");
System.out.print("]");
}
输出是:
[1,1] [1,1] [1,1] [1,1]
关于如何将每个数组添加到我的数组列表中的任何想法?
问题是您将相同的对象添加到 ArrayList 的每个索引中。每次修改它时,您都在修改同一个对象。为了解决这个问题,你必须传递对不同对象的引用。
String[] t2 = new String[2];
ArrayList<String[]> list2 = new ArrayList<String[]>();
t2[0]="0";
t2[1]="0";
list2.add(t2);
t2 = new String[2]; // create a new array
t2[0]="0";
t2[1]="1";
list2.add(t2);
t2 = new String[2];
t2[0]="1";
t2[1]="0";
list2.add(t2);
t2 = new String[2];
t2[0]="1";
t2[1]="1";
list2.add(t2);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)