red hat enterprise linux 8到图书

129.9元

(需用券)

去购买 >

1.通过增强的for循环删除符合条件的多个元素

/**

* 使用增强的for循环

* 在循环过程中从List中删除元素以后,继续循环List时会报ConcurrentModificationException

*/

public void listRemove() {

List students = this.getStudents();

for (Student stu : students) {

if (stu.getId() == 2)

students.remove(stu);

}

}

2.通过增强的for循环删除符合条件的一个元素

/**

* 像这种使用增强的for循环对List进行遍历删除,但删除之后马上就跳出的也不会出现异常

*/

public void listRemoveBreak() {

List students = this.getStudents();

for (Student stu : students) {

if (stu.getId() == 2) {

students.remove(stu);

break;

}

}

}

3.通过普通的for删除删除符合条件的多个元素

/**

* 这种遍历有可能会遗漏某个元素,因为删除元素后List的size在

* 变化,元素的索引也在变化,比如你循环到第2个元素的时候你把它删了,

* 接下来你去访问第3个元素,实际上访问到的是原先的第4个元素。当访问的元素

* 索引超过了当前的List的size后还会出现数组越界的异常,当然这里不会出现这种异常,

* 因为这里每遍历一次都重新拿了一次当前List的size。

*/

public void listRemove2() {

List students = this.getStudents();

for (int i=0; i

if (students.get(i).getId()%3 == 0) {

Student student = students.get(i);

students.remove(student);

}

}

}

4.通过Iterator进行遍历删除符合条件的多个元素

/**

* 使用Iterator的方式也可以顺利删除和遍历

*/

public void iteratorRemove() {

List students = this.getStudents();

System.out.println(students);

Iterator stuIter = students.iterator();

while (stuIter.hasNext()) {

Student student = stuIter.next();

if (student.getId() % 2 == 0)

//这里要使用Iterator的remove方法移除当前对象,如果使用List的remove方法,则同样会出现ConcurrentModificationException

stuIter.remove();

}

System.out.println(students);

}

原文链接:https://segmentfault.com/a/1190000012894119

实用现代javascript模块化系列

68.08元

(需用券)

去购买 >

java遍历list删除数据,遍历删除List中的元素方法相关推荐

  1. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(18)-过滤器的使用和批量删除数据(伪删除和直接删除)...

    ASP.NET MVC+EF框架+EasyUI实现权限管理系列(18)-过滤器的使用和批量删除数据(伪删除和直接删除) 原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(18)-过 ...

  2. hive删除数据、删除分区、删除库表

    hive删除数据.删除分区.删除库表 -- 删除库 drop database if exists db_name; -- 强制删除库 drop database if exists db_name ...

  3. python mysql删除数据_python-mysql删除和更新数据

    删除数据 import codecs import MySQLdb def connect_mysql(): db_config = { 'host': '192.168.48.128', 'port ...

  4. MySQL 删除数据 批量删除(大量)数据

    在删除数据的时候根据不同的场景使用不同的方法,比如说删除表中部分数据.删除表的结构.删除所有记录并重置自增ID.批量删除大量数据等,可以使用delete.truncate.drop等语句. 一.方法分 ...

  5. 【java】自动写入数据到文件夹中

    Java自动写入数据到文件夹中 package p1; //*********Found********** import java.io.*; import java.util.Vector;pub ...

  6. java mysbatis select_java相关:详解Mybatis中的select方法

    java相关:详解Mybatis中的select方法 发布于 2020-7-3| 复制链接 摘记: selectById方法根据id,查询记录 ```java public void updateRe ...

  7. java控制器删除数据_javaWeb删除一条及多条数据

    一.编写dao //删除根据ID @Delete("delete from product where id=#{id}") public void delete(Integer ...

  8. 2007数据透视表如何删除_删除数据透视表标题中的总和

    2007数据透视表如何删除 When you're building a pivot table, if you add fields to the Values area, Excel automa ...

  9. php中复选框删除数据_checkbox 删除,checkbox_PHP教程

    选项学号姓名< /th>性别电话 在创建sc.php 数据库数据: -- phpMyAdmin SQL Dump -- version 2.11.6 -- http://www.phpmy ...

最新文章

  1. keras Regressor 回归
  2. Entity Framework中IQueryable, IEnumerable, IList的区别
  3. Webview离线功能(优先cache缓存+cache缓存管理)
  4. 使用之location和rewrite用法
  5. 关闭共享的DOS命令
  6. 判断数字在字符串中的位置 详解(C++)
  7. 林子雨《大数据技术原理与应用》第五讲——NoSQL数据库
  8. 【转载】微信小程序中引入iconfont阿里矢量图库
  9. 《现代控制工程基础》复习笔记
  10. 一个算法面试题的5种不同解法
  11. 解决手机WiFi(电脑热点)一直正在获取IP地址或无法访问互联网【与网上其他方法不同】
  12. 基于php工程项目管理系统——计算机毕业设计
  13. 【杭研大咖说】Istio进入1.7版本,Service Mesh 落地还有什么障碍?
  14. python中for c in s是什么意思_以下程序s=3for c in Python:s=s+2print(s)的输出结果是:()...
  15. Go语言基础之网络编程
  16. 蒲公英linux客户端登录提示密码错误的解决方法
  17. hibernate之SessionFactory和Session
  18. js中substring()、substr() 、slice()的用法
  19. 线性代数之向量、矩阵、行列式、列向量的计算
  20. Linux并发与同步专题 (4) Mutex互斥量

热门文章

  1. 学计算机 数学日记,数学日记,Mathematics Diary,音标,读音,翻译,英文例句,英语词典...
  2. 三年级学生写数学用计算机算,三年级学生数学日记10篇
  3. Linux连接MySQL
  4. C/C++编程:CGI与fastCGI
  5. 老板没钱了,服务器如何缩容?
  6. Linux惊群效应详解
  7. 用于退出access的宏命令是_access2007 宏_access创建宏_退出access的宏命令(2)
  8. 【安卓】1.修改按钮样式之圆角按钮+按钮图标(保姆级图文+附示例+api例程)
  9. 和刘备相关的人(三)
  10. i love java怎么写编程_专属于程序员的浪漫-Java输出动态闪图iloveyou