Java如何删除List集合中的元素 |
您所在的位置:网站首页 › java如何删除list中的元素 › Java如何删除List集合中的元素 |
文章目录
1、想象出来的题目2、错误的写法3、正确的写法3.1、倒叙删除法3.2、使用迭代器删除(iterator)(推荐)
1、想象出来的题目
假设有如下数组,现在要求在一个循环内将内容为C开头的都删掉 出问题的原因: 在删除C1后,C2向前进一位,原本的下标位置3变成了2。此时继续循环 i 指向到了下标3,也就是内容为D的值,因此肯定删除不了C2 从后向前删,解决了下标混乱的问题,所以可以成功 3.2、使用迭代器删除(iterator)(推荐) package com.demo; import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class ListRemoveDemo { public static void main(String[] args) { List list = new ArrayList(5); list.add("A"); list.add("B"); list.add("C1"); list.add("C2"); list.add("D"); list.add("E"); System.out.println("删除前的list:" + list.toString()); Iterator iterator = list.iterator(); while (iterator.hasNext()) { String str = iterator.next(); if (str.startsWith("C")) { iterator.remove(); } } System.out.println("删除后的list:" + list.toString()); } }Iterator.remove() 方法会在删除当前迭代对象的同时,会保留原来元素的索引。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |