java Arraylist 能赋值给另一个 ArrayList么
如何将一个ArrayList赋值给另一个ArrayList.ArrayLista=newArrayList();ArrayListb=newArrayList();b=a...
如何将一个ArrayList赋值给另一个ArrayList.
ArrayList a = new ArrayList();
ArrayList b = new ArrayList();
b= a; // 可以成功么? 展开
ArrayList a = new ArrayList();
ArrayList b = new ArrayList();
b= a; // 可以成功么? 展开
5个回答
展开全部
不行,这样只是复制一个pointer。
b=a是将b的地址值指向a,而b原先的对象会被垃圾回收。但是在这里我想告诉你的是集合之间的复制方法:
方法一:ArrayList<Integer> b= new ArrayList<Integer>(a);//利用集合自带的构造方法
方法二:ArrayList<Integer> b =(ArrayList<Integer>) a.clone();//利用克隆的方法进行赋值。
这些方法都是项目中常用而且重要的技术,希望对你有帮助。
b=a是将b的地址值指向a,而b原先的对象会被垃圾回收。但是在这里我想告诉你的是集合之间的复制方法:
方法一:ArrayList<Integer> b= new ArrayList<Integer>(a);//利用集合自带的构造方法
方法二:ArrayList<Integer> b =(ArrayList<Integer>) a.clone();//利用克隆的方法进行赋值。
这些方法都是项目中常用而且重要的技术,希望对你有帮助。
展开全部
当然可以,编译运行都没问题,
上面代码的意思相当于
ArrayList a = new ArrayList();
ArrayList b = a;
也就是说b 指向了a的地址, a,b本质上没有了区别
上面代码的意思相当于
ArrayList a = new ArrayList();
ArrayList b = a;
也就是说b 指向了a的地址, a,b本质上没有了区别
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这样是不可以的, 你可以用 b.addAll( a )
或 Collections.copy( b, a );
或 Collections.copy( b, a );
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以赋值成功。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用 addAll() 方法 把一个list完全添加到另外一个list里
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询