集合赋值及for循环删除符合条件的元素
一、Java语言中ArrayList对象能直接赋值给另一个ArrayList对象吗?
https://zhidao.baidu.com/question/399214655.html
ArrayList<Integer> num1 = new ArrayList<Integer>();
num1.add(1);
num1.add(2);
ArrayList<Integer> num2 = new ArrayList<Integer>();
num2.add(1);
num2.add(3);
num2.add(4);
num1 = num2;
num1=num2是将num1的地址值指向num2,而num1原先的对象会被垃圾回收。但是在这里我想告诉你的是集合之间的复制方法:
方法一:ArrayList<Integer> num2 = new ArrayList<Integer>(num1);//利用集合自带的构造方法
方法二:ArrayList<Integer> num2 =(ArrayList<Integer>) num1.clone();//利用克隆的方法进行赋值。
num1 = num2并不是赋值,而是指向,你定义的num1并不是一个ArrayList对象,而是一个指针,它只是指向了这个你后面创建的这个对象,当你执行num1 = num2时,只是将指针的指向你第二个创建的对象。
举个例子,有两条宠物狗,第一条你叫它小白,给它买了个项圈,第二条你叫它胖胖,也买了项圈,还买了宠物衣服。现在你发现胖胖比小白还白,所以你决定管胖胖叫小白,这之后你小白和胖胖这两个名字都是指第二条狗,而第一条狗因为名字被拿走,它就没有名字了。
二、java中for循环删除元素的问题(for循环遍历时,删除集合中符合条件的元素,容易删除不成功)
https://blog.csdn.net/answers1993ai/article/details/78436870
for(int i=0;i<list.size();i++){
if(list.get(i).contains("a")){
list.remove(i);
i--;
}
}
集合赋值及for循环删除符合条件的元素的更多相关文章
- 遍历List集合,删除符合条件的元素
List集合的遍历有三种方式:增强for循环,普通for循环,Iterator迭代器遍历 如果只是对集合进行遍历,以上三种循环都可正常遍历: (1)增强For循环遍历List集合 List<St ...
- C++ vector 删除符合条件的元素
C++ vector中实际删除元素使用的是容器vecrot中std::vector::erase()方法. C++ 中std::remove()并不删除元素,因为容器的size()没有变化,只是元素的 ...
- 【转载】C#中List集合使用Exists方法判断是否存在符合条件的元素对象
在C#的List集合操作中,有时候需要根据条件判断List集合中是否存在符合条件的元素对象,此时就可以使用List集合的扩展方法Exists方法来实现,Exists方法的签名为bool Exists( ...
- PHP删除符合条件的整个目录
<?php /** * @name delFile函数与delDir函数一起使用, 删除符合条件的整个目录 * @param string $path 指定操作路径 * @return null ...
- 【转载】C#中List集合使用LastOrDefault方法查找出最后一个符合条件的元素
在C#的List集合中,FirstOrDefault方法一般用来查找List集合中第一个符合条件的对象,如果未查到则返回相应默认值.其实如果要查找最后一个符合条件的List集合元素对象,可以使用Las ...
- 【转载】 C#中通过Where方法查找出所有符合条件的元素集合
在C#的List集合对象中,FirstOrDefault方法可以用于查找List集合中符合条件的第一个元素,如果需要根据条件查找到List集合中的所有符合条件的元素对象集合,则需要使用到List集合的 ...
- 【Matlab开发】matlab删除数组中符合条件的元素与散点图绘制
[Matlab开发]matlab删除数组中符合条件的元素与散点图绘制 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ matlab删除数组中符合条件的元素 如 ...
- 【转载】ArrayList使用LastIndexOf方法查找最后一个符合条件的元素位置
在C#的编程开发中,ArrayList集合是一个常用的非泛型类集合,在ArrayList集合中如果需要查找最后一个符合条件的元素所在的位置,可以使用ArrayList集合的LastIndexOf方法, ...
- 【转载】C#的ArrayList使用IndexOf方法查找第一个符合条件的元素位置
在C#的编程开发中,ArrayList集合是一个常用的非泛型类集合,在ArrayList集合中如果需要查找第一个符合条件的元素所在的位置,可以使用ArrayList集合的IndexOf方法,Index ...
随机推荐
- github 改位置
在设置里改位置后,先在本地库上右键"stop track this repo". 然后在在线库重新CLONE.
- busybox下的tftp client
# tftp -p -l file host # put local file to remote host # tftp -g -r file host # get remote fil ...
- 《Wrox.Professional.Hadoop.Solutions》中文目录全稿
前言:最近有朋友给推荐一本书,英文原版<Wrox.Professional.Hadoop.Solutions>,感觉很好打算翻译成中文,共享给朋友,时间关系,不知能否成行,先干着吧.以下部 ...
- BASIC-7_蓝桥杯_特殊的数字
代码示例: #include <stdio.h>#define B(X) (X)*(X)*(X) int main(void){ int i = 0 ; int a = 0 , b = 0 ...
- StringIO-将字符串当做文件处理
StringIO将字符串当做文件处理,十分方便 >>> from StringIO import StringIO >>> file_like_string = S ...
- [转]SQL SERVER 的排序规则
如何更改SQL SERVER 2000的排序规则 -- 增加复合主键语句 Alter Table tableName Add primary key (field1,field2) Alter dat ...
- (转!)Netdata---Linux系统性能实时监控平台部署
我一直以为人是慢慢变老的,其实不是,人其实是一瞬间变老的. -------村上春树<舞!舞!舞!> 转自https://www.cnblogs.com/kevingrace/p/73001 ...
- 模型融合策略voting、averaging、stacking
原文:https://zhuanlan.zhihu.com/p/25836678 1.voting 对于分类问题,采用多个基础模型,采用投票策略选择投票最多的为最终的分类. 2.averaging 对 ...
- android官方文档翻译(不断更新中。。。)
最近在自学android,抽空把官方文档的guide跟training差不多看了一遍,又对比了一些书籍,感觉还是官方文档讲得比较好,所以自己计划把官方文档翻译一下,方便自己的知识巩固以及复习查找,由于 ...
- NHibernate 学习笔记(一)
NHibernate 的简介: NHibernate是一个面向.NET环境的对象/关系数据库映射工具.对象/关系数据库映射(object/relational mapping (ORM))这个术语表示 ...