Java删除集合中的元素常见方法汇总
Java代码如下:
- public static void main(String[] args) {
- removeItem1();
- removeItem2();
- removeItem3();
- }
- private static void removeItem1() {
- List<Integer> list = getList();
- // 使用迭代器
- Iterator<Integer> iter = list.iterator();
- Integer item = null;
- while (iter.hasNext()) {
- item = iter.next();
- if (null != item && 5 == item.intValue()) {
- iter.remove();
- }
- }
- System.out.println(list);
- }
- private static void removeItem2() {
- List<Integer> list = getList();
- // 手动索引操作
- int len = list.size();
- Integer item = null;
- for (int i = 0;i < len;i++) {
- item = list.get(i);
- if (null != item && 5 == item.intValue()) {
- list.remove(item);
- i--;
- len--;
- }
- }
- System.out.println(list);
- }
- private static void removeItem3() {
- List<Integer> list = getList();
- // 使用引用克隆
- List<Integer> listCopy = new ArrayList<Integer>();
- listCopy.addAll(list);
- for (Integer item:list) {
- if (null != item && 5 == item.intValue()) {
- listCopy.remove(item);
- }
- }
- System.out.println(listCopy);
- }
- private static List<Integer> getList() {
- List<Integer> list = new ArrayList<Integer>();
- for (int i = 0;i < 10;i++) {
- list.add(i);
- }
- return list;
- }
- }
- Java代码运行结果:
- [0, 1, 2, 3, 4, 6, 7, 8, 9]
- [0, 1, 2, 3, 4, 6, 7, 8, 9]
- [0, 1, 2, 3, 4, 6, 7, 8, 9]
复制代码
|
|