Java ArrayList遍历时删除一个元素
2015-11-11 13:46
441 查看
我们知道ArrayList的底层是用数组实现的,如果你删除了其中一个元素,那么后边的元素都会向前移动。所以在遍历时如果删除元素,就要小心了。
第一种方法,用数组下标进行遍历,如果需要删除元素,我们从后向前遍历,这样不论有没有元素删除,我们都不会遗漏未被遍历的元素。
第二种方法,我们使用迭代器。
Iterator itr = list.iterator();
while(itr.hasNext()) {
if(...) {
itr.remove();
}
}
总之,如果你的删除操作比较多的话,建议使用LinkedList。
原文:http://blog.csdn.net/hongchangfirst/article/details/49780389
作者:hongchangfirst
hongchangfirst的主页:http://blog.csdn.net/hongchangfirst
第一种方法,用数组下标进行遍历,如果需要删除元素,我们从后向前遍历,这样不论有没有元素删除,我们都不会遗漏未被遍历的元素。
第二种方法,我们使用迭代器。
Iterator itr = list.iterator();
while(itr.hasNext()) {
if(...) {
itr.remove();
}
}
总之,如果你的删除操作比较多的话,建议使用LinkedList。
原文:http://blog.csdn.net/hongchangfirst/article/details/49780389
作者:hongchangfirst
hongchangfirst的主页:http://blog.csdn.net/hongchangfirst
相关文章推荐
- JavaIO流
- (系统讲解)java内存分配分析/栈内存、堆内存
- 【MyEclipse】配置代码格式化模版
- 最新版eclipse Mars 配置 maven
- 使用 Spring 2.5 基于注解驱动的 Spring MVC
- spring mvc项目中导出excel表格简单实现
- Java方法trim()所不能删除的字符串两端的全角空格删除方法
- java 获取项目绝对路径
- java xml -doc - string 转换
- java虚拟机02-体系结构
- 第三章:Dubbo整合maven+spring+springmvc+mybatis之服务消费搭建
- 深入理解Java中的final关键字
- 深入理解Java中的final关键字
- java的几种对象(PO,VO,DAO,BO,POJO)解释
- Spring MVC事务配置
- Java-IO-文件的创建及读取(一)
- Java-IO-文件的创建及读取(一)
- 第二章:Dubbo整合maven+spring+springmvc+mybatis之服务提供者搭建
- Java不定参数
- Java8 lambda表达式是什么?