假设我有这部分代码。而且我有输出。
allValues:[[0,1,2,3,4,5,6,7,8,9,10],[]]。
当我使listOfValues2 clear()时。我希望只清除该列表,而不影响allValues列表中的值。我该怎么做?
我需要这样做,因为稍后我将生成具有另一个数据集的另一个listOfValues2,并将其作为第三个列表放入allValues中。
LinkedList<Integer> listOfValues1 = new LinkedList<Integer>();
LinkedList<Integer> listOfValues2 = new LinkedList<Integer>();
LinkedList<LinkedList<Integer>> allValues=
new LinkedList<LinkedList<Integer>>();
for(int w=0; w<=10; w++) {
listOfValues1.add(w);
}
for(int b=5; b<=15; b++) {
listOfValues2.add(b);
}
allValues.add(listOfValues1);
allValues.add(listOfValues2);
listOfValues2.clear();
System.out.println("allValues: " + allValues);
最佳答案
我需要这样做,因为稍后我将生成具有另一个数据集的另一个listOfValues2,并将其作为第三个列表放入AllValues中。
然后不要清除listOfValues2
。稍后创建新的LinkedList
并将其分配给listOfValues2
变量。您对原始listOfValues2
所做的任何更改也将在allValues
中进行,因为listOfValues2
和allValues
的第二个元素共享对对象列表的相同引用。
关于java - LinkedList清除方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19784119/