美文网首页
JAVA增强for循环

JAVA增强for循环

作者: 煮黑豆 | 来源:发表于2019-06-21 16:01 被阅读0次

    增强for循环是for的一种新用法!用来循环遍历数组和集合。
    1、增强for的语法

    for(元素类型 e : 数组或集合对象) {
    }
    

    例如:

    int[] arr = {1,2,3};
    for(int i : arr) {//i的值从数组的第一个元素一直到最后一个元素!
        System.out.println(i);
    }
    

    增强for的冒号左边是定义变量,右边必须是数组或集合类型。例如上例中循环遍历的主浊arr这个int数组,增强for内部会依次把arr中的元素赋给变量i。
    2、增强for的优缺点
    只能从头到尾的遍历数组或集合,而不能只遍历部分;
    在遍历List或数组时,不能获取当前元素下标;
    增强for使用便简单,这是它唯一的优点了;
    增强for比使用迭代器方便一点!
    3、增强for原理
    任何实现了Iterable接口的类,都有返回Iterator的方法。
    其实增强for底层是迭代器,任何实现了Iterable接口的类都可以使用增强for来遍历!

    其实增强for内部是使用迭代器完成的!也就是说,任何实现了Iterable接口的对象都可以被增强for循环遍历!这也是为什么增强for可以循环遍历集合的原因(Collection是Iterable的子接口)。
    但要注意,Map并没有实现Iterable接口,所以你不能直接使用增强for来遍历它

    Map<String, String> map = new HashMap<String,String>();
    map.put("1", "one");
    map.put("2", "two");
    map.put("3", "three");
    //循环遍历map的所有键,map.keySet()返回的是Set类型,而Set是可以被增强for遍历的        
    for(String key : map.keySet()) {
        String value = map.get(key);
        System.out.println(key + "=" + value);
    }
    

    相关文章

      网友评论

          本文标题:JAVA增强for循环

          本文链接:https://www.haomeiwen.com/subject/ipzyqctx.html