平时没有在意的引用传递的坑
public class Test { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("abc"); list.add("bcd"); List<String> list2 = list; list.add("cde"); for (String s : list) { System.out.print(s + " "); } System.out.println(); for (String s : list2) { System.out.print(s + " "); } } }
如上代码,将list赋值给list2后,再修改list的值,此时list和list2两个引用指向的对象还是同一个,所以最终list和list2的值还是一样的。
运行结果:
abc bcd cde
abc bcd cde