参考https://blog.csdn.net/w305172521/article/details/52503072
1、对象B是对对象A的引用,修改B的操作会直接改变A对象的值
ArrayList<String> A= new ArrayList<String>();
A.add("1");
A.add("2");
ArrayList<String> B;
B = A;
2、如果是想赋值
方式一:
ArrayList B = new ArrayList<> (A);
方式二:
ArrayList B = A.clone();
方式三:
ArrayList B = new ArrayList<String>();
B.addAll(A);
方式四:
for(String s: A)
B.add(s);
补充一点,上面都是是list赋值给list,在刷leetcode时,遇到一个代码,
为什么这里List可以赋值给Set
形参List<String> wordDict)
Set<String> wordDictSet=new HashSet(wordDict);
这里我的理解是题目中已经给定wordDict这个List本身不包含重复元素,所以可以赋值给Set,因为Set本身不可以包含相同元素,而List可以