ListlistCount=newArrayList();Listlist1=newArrayList();list1.add("1");listCount.add(list1);//1,代码运行到了这里,listCount里面的值是[[1]]//2,list1又指向了一个新的ArrayLi...
List listCount = new ArrayList();
List list1 = new ArrayList();list1.add("1");
listCount.add(list1);
//1,代码运行到了这里,listCount里面的值是[[1]]
//2,list1又指向了一个新的ArrayListlist1 = new ArrayList();
list1.add("2");
listCount.add(list1);
//3,代码运行到了这里,listCount现在的值是[[1][2]],
现在我的疑问是:listCount的值不应该是[[2]]吗?
因为list1指向了第2个new出来的list,
list1的指向的地址变了,所以listCount里面的值也应该发生变化了,
无视上面的代码吧
上面的代码排版有问题,其实是这样的
List listCount = new ArrayList();
List list1 = new ArrayList();
list1.add("1");
listCount.add(list1);
//1,代码运行到了这里,listCount里面的值是[[1]]
//2,再次给list1指向一个新的对象
list1 = new ArrayList();
list1.add("2");
listCount.add(list1);
//3,代码运行到了这里,listCount现在的值是[[1][2]],
现在我的疑问是:listCount的值不应该是[[2]]吗?
因为list1指向了第2个new出来的list,
list1的指向的地址变了,所以listCount里面的值也应该发生变化了
展开