一个关于集合的问题,为什么添加进List集合中的元素被莫名其妙的改变了

Posted 黑帅-quan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一个关于集合的问题,为什么添加进List集合中的元素被莫名其妙的改变了相关的知识,希望对你有一定的参考价值。

以前自己理解的不够深刻,特此记录一下提醒自己,如果正好也帮到了你,我会很开心。相信只有自己正好遇到这个问题,才觉得哦,原来这样。自己小白,大神莫喷

为什么添加进List集合中的元素被莫名其妙的改变了?

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class Demo {
/**
* @param args
*/
public static void main(String[] args) {
List<List<String>> testlist = new ArrayList<List<String>>();
String[] items = { "lorem", "ipsum", "dolor", "purus" };
List<String> list1 = Arrays.asList(items);
System.out.println("原集合:"+list1.toString());
testlist.add(list1);
// 把集合的顺序打乱
Collections.shuffle(list1);
System.out.println("打乱后集合:"+list1.toString());
testlist.add(list1);
list1 = Arrays.asList(items);
Collections.shuffle(list1);
System.out.println("再次打乱后集合:"+list1.toString());
testlist.add(list1);
System.out.println(testlist.toString());
  }

}

添加进去的元素是没有问题的,但是最后list集合所有元素只和最后一次添加进去的形同。不解,求大牛赐教!!!

以上是关于一个关于集合的问题,为什么添加进List集合中的元素被莫名其妙的改变了的主要内容,如果未能解决你的问题,请参考以下文章

Java集合问题

java 基础关于 list 集合问题

分享一篇大佬的笔记,List集合特点+常见方法讲解,建议收藏!

java集合

关于集合的使用

学习记录10 --- 关于集合的一些题目