list.add()方法添加集合的问题
class Solution {
public List<List<Integer>> subsets(int[] nums) {
List<List<Integer>> list = new ArrayList<>();
backTrack(0,nums,list,new ArrayList<Integer>());
return list;
}
private void backTrack(int i, int[] nums, List<List<Integer>> list, ArrayList<Integer> temp){
list.add(new ArrayList<>(temp));
for(int j = i; j < nums.length; j++){
temp.add(nums[j]);
backTrack(j+1,nums,list,temp);
temp.remove(temp.size() - 1);
}
}
}
老师,您好!看到这样一段代码,在backTrack方法当中,list.add()方法为什么不能直接使用list.add(temp)直接将添加到list集合当中呢?为什么要使用list.add(new ArrayList(temp))?谢谢
源自:Java集合
2-1 List概述
7
收起
正在回答 回答被采纳积分+1
1. Java 零基础入门
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星