Har*_*uki 1 java list arraylist
java.util.List<java.util.List<String>> statuses = new java.util.ArrayList<>();
java.util.List<String> temp = new java.util.ArrayList<>();
System.out.println("yoi :" + temp.size());
statuses.add(temp);
System.out.println("warui :" + statuses.get(0).size());
temp.clear();
System.out.println("kirai :" + statuses.get(0).size());
Run Code Online (Sandbox Code Playgroud)
控制台输出:
yoi :31
warui :31
kirai :0
Run Code Online (Sandbox Code Playgroud)
当我清除我曾经插入的临时列表时,为什么在其他列表中的地球列表中为空?
要添加参照List你的statuses List,这意味着statuses持有相同的参考List通过引用temp.
您应该temp在将其添加到以下内容之前创建副本List:
statuses.add(new ArrayList<>(temp));
Run Code Online (Sandbox Code Playgroud)
现在清算temp不会影响statuses.
| 归档时间: |
|
| 查看次数: |
50 次 |
| 最近记录: |