浅谈java 增强型的for循环 for each

 更新时间:2016年10月02日 10:30:39   投稿:jingxian  
下面小编就为大家带来一篇浅谈java 增强型的for循环 for each。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

For-Each循环

For-Each循环也叫增强型的for循环,或者叫foreach循环。

For-Each循环是JDK5.0的新特性(其他新特性比如泛型、自动装箱等)。

For-Each循环的加入简化了集合的遍历。

其语法如下:

for(type element: array)

{

   System.out.println(element);

}

例子

其基本使用可以直接看代码:

代码中首先对比了两种for循环;之后实现了用增强for循环遍历二维数组;最后采用三种方式遍历了一个List集合。

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class ForeachTest
{
  public static void main(String[] args)
  {
    int[] arr = {1, 2, 3, 4, 5};
    
    System.out.println("----------旧方式遍历------------");
    //旧式方式    
    for(int i=0; i<arr.length; i++)
    {
      System.out.println(arr[i]);
    }
    
    System.out.println("---------新方式遍历-------------");
    
    //新式写法,增强的for循环
    for(int element:arr)
    {
      System.out.println(element);
    }
    
    System.out.println("---------遍历二维数组-------------");
    
    //遍历二维数组
    
    int[][] arr2 = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}} ;
    
    for(int[] row : arr2)
    {
      for(int element : row)
      {
        System.out.println(element);
      }
    }
    
    //以三种方式遍历集合List
    
    List<String> list = new ArrayList<String>();
    
    list.add("a");
    list.add("b");
    list.add("c");
    
    System.out.println("----------方式1-----------");
    //第一种方式,普通for循环
    for(int i = 0; i < list.size(); i++)
    {
      System.out.println(list.get(i));
      
    }
    
    System.out.println("----------方式2-----------");
    //第二种方式,使用迭代器
    for(Iterator<String> iter = list.iterator(); iter.hasNext();)
    {
      System.out.println(iter.next());
    }
    System.out.println("----------方式3-----------");
    //第三种方式,使用增强型的for循环
    for(String str: list)
    {
      System.out.println(str);
      
    }
  }

}

For-Each循环的缺点:丢掉了索引信息。

当遍历集合或数组时,如果需要访问集合或数组的下标,那么最好使用旧式的方式来实现循环或遍历,而不要使用增强的for循环,因为它丢失了下标信息。

以上就是小编为大家带来的浅谈java 增强型的for循环 for each的全部内容了,希望对大家有所帮助,多多支持脚本之家~

相关文章

  • Spring IoC容器常见获取Bean的方式汇总示例解析

    Spring IoC容器常见获取Bean的方式汇总示例解析

    这篇文章主要为大家介绍了Spring IoC容器常见获取Bean的方式汇总示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • SpringBoot web静态资源配置详解

    SpringBoot web静态资源配置详解

    这篇文章主要介绍了SpringBoot web静态资源配置详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • JDK完全卸载超详细步骤

    JDK完全卸载超详细步骤

    这篇文章主要给大家介绍了关于JDK完全卸载超详细步骤的相关资料,在安装JDK之前,最好将原来可能安装过的JDK卸载掉,以免影响到新JDK的使用,需要的朋友可以参考下
    2023-08-08
  • springboot自动扫描添加的BeanDefinition源码实例详解

    springboot自动扫描添加的BeanDefinition源码实例详解

    这篇文章主要给大家介绍了关于springboot自动扫描添加的BeanDefinition的相关资料,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2022-02-02
  • Java中数字黑洞实现代码

    Java中数字黑洞实现代码

    这篇文章主要介绍了Java编程中如何实现数字黑洞算法游戏,其中涉及到了数组、scanner、if语句等Java编程的基础知识,需要的朋友可以参考下
    2017-09-09
  • Java获取接口所有实现类的方式详解

    Java获取接口所有实现类的方式详解

    这篇文章主要介绍了Java获取接口所有实现类的方式详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • 初步了解javafx

    初步了解javafx

    这篇文章主要介绍了初步了解javafx,具有一定借鉴价值,需要的朋友可以参考下
    2017-12-12
  • java图形化界面实现登录窗口

    java图形化界面实现登录窗口

    这篇文章主要为大家详细介绍了java图形化界面实现登录窗口,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • 分析xxljob登入功能集成OIDC的统一认证

    分析xxljob登入功能集成OIDC的统一认证

    这篇文章主要为大家介绍分析xxljob登入功能集成OIDC的统一认证的详解说明,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2022-02-02
  • Springboot实例讲解实现宠物医院管理系统流程

    Springboot实例讲解实现宠物医院管理系统流程

    读万卷书不如行万里路,只学书上的理论是远远不够的,只有在实战中才能获得能力的提升,本篇文章手把手带你用Springboot实现宠物医院综合管理系统,大家可以在过程中查缺补漏,提升水平
    2022-06-06

最新评论