`
passion99
  • 浏览: 11353 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

遍历的三种方式

    博客分类:
  • JAVA
 
阅读更多

Java中遍历的三种方式:普通for循环、增强型for循环、迭代方式。

一、普通For循环

1、遍历 

      List<String> set = new ArrayList<String>();
        set.add("张三");
        set.add("李四");
         for(int i=0;i<set.size();i++){
               System.out.println(set.get(i));
             }

输出:

张三
李四

2、修改或删除元素

        // 只有使用普通for循环可以删除元素
         for(int i=0;i<set.size();i++){
           if(i==1) {
             set.remove(i);
          }
         }

输出:

张三

特点:

1、可以获取具体位置的元素

2、可以在遍历的同时修改或者删除元素

二、增强型For循环

1、遍历

        for (String s : set) {
            System.out.println(s);
        }

输出:

张三
李四

2、遍历时不能删除元素

        //遍历时不能删除元素
        for(String s:set){
            if("李四".equals(s)){
                set.remove(s);
            }
        }

报错信息:

Exception in thread "main" java.util.ConcurrentModificationException

3、迭代器遍历

1、遍历

          Iterator<String> m = set.iterator();
          Iterator<String> n = set.iterator();
          while(m.hasNext()){
              System.out.println(m.next());
          }

输出:

张三

李四

2、使用迭代器的remove方法删除

          while(n.hasNext()){
              if("李四".equals(n.next())){
                  n.remove();
              }
          }
            for (String s : set) {
                System.out.println(s);
            }

输出:

张三

备注:使用不同的两个遍历器m和n,是因为发现迭代器只能使用一次。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics