集合之增强for循环

1.作用

使用增强for循环可以简化数组以及集合的遍历方式:

 for(元素数据类型 变量 : 数组或者Collection集合) {
        使用变量即可,该变量就是元素
 }

2.在集合中三种迭代方式的删除数据

  • 增强for循环不能删除数据
  • 利用For循环进行自减改变,从而可以删除
  • 利用迭代器,使用remove方法
public class Testone {

    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("a");
        list.add("b");
        list.add("b");
        list.add("c");
        list.add("d");

        //普通for循环删除,索引做自减运算
        for(int i = 0; i < list.size(); i++) {
            if("b".equals(list.get(i))) {
                list.remove(i);        
                i--;
            }
        }

        //迭代器删除
        for(ListIterator<String> iter = list.listIterator(); iter.hasNext();){
            if("b".equals(iter.next())) {
                iter.remove();
            }
        }
        //增强for循环不能删除,ConcurrentModificationException
        for (String string : list) {
            if("b".equals(string)) {
                list.remove("b");
            }
        }
        System.out.println(list);
    }

}
posted @ 2019-03-31 20:53  一起学编程  阅读(387)  评论(0编辑  收藏  举报