问题说明,查看以下两种添加方式的不同
public static ArrayList<Integer> path = new ArrayList<>();
public static ArrayList<ArrayList<Integer>> res = new ArrayList<>();
res.add(path);
res.add(new ArrayList<>(path));
实践出真知,建议代码手敲一遍就明白了
public class test {
public static void main(String[] args) {
ArrayList<Integer> path = new ArrayList<>();
ArrayList<ArrayList<Integer>> res = new ArrayList<>();
path.add(1);
path.add(2);
path.add(3);
System.out.println("第一次:"+res);
res.add(path);
System.out.println("第二次:"+res);
path.add(4);
res.add(new ArrayList<>(path));
System.out.println("第三次:"+res);
path.add(5);
res.add(new ArrayList<>(path));
System.out.println("第四次:"+res);
}
}
参考链接:
https://blog.csdn.net/weixin_42707971/article/details/107609388