java  List循环与Map循环的总结

 更新时间:2016年11月13日 15:43:46   投稿:lqh  
这篇文章主要介绍了java List循环与Map循环的总结的相关资料,并附代码实例,帮助大家学习理解,需要的朋友可以参考下

java  List循环与Map循环的总结

做了一下list和map的总结,没有什么技术含量,就全当复习了一下api。

测试环境是在junit4下,如果没有自己写一个main方法也是一样的。

首先是List的三种循环:



   @Test 
public void ForListTest() { 
  List<String> list = new ArrayList<String>(); 
  list.add("1"); 
  list.add("2"); 
  list.add("3"); 
  list.add("4"); 
  list.add("5"); 
 
  // 迭代器循环不需要知道集合的大小以及类型,最佳选择 
  for (@SuppressWarnings("rawtypes") 
  Iterator iterator = list.iterator(); iterator.hasNext();) { 
    String list = (String) iterator.next(); 
    System.out.println("01)Iterator for:===============" + list); 
  } 
 
  // foreach相对比for来讲,不需要知道集合的长度 
  for (String list : list) { 
    System.out.println("02)foreach:=================" + list); 
  } 
 
  // for循环既需要知道集合的大小,而且要求是有序的 
  for (int i = 0; i < list.size(); i++) { 
    System.out.println("03)for==================" + list.get(i)); 
  } 
} 

然后是Map的四种循环:


 

   @Test 
public void ForMapTest() { 
  Map<String, String> map = new HashMap<String, String>(); 
  map.put("01", "1"); 
  map.put("02", "2"); 
  map.put("03", "3"); 
  map.put("04", "4"); 
  map.put("05", "5"); 
  Set<String> keySet = map.keySet(); 
  //1.keyset的foreach方法 
  for (String key : keySet) { 
    System.out.println("1)keyset:" + "key:" + key + " value:" 
        + map.get(key)); 
  } 
 
  Set<Entry<String, String>> entrySet = map.entrySet(); 
  //2.entryset的迭代方法 
  for (@SuppressWarnings("rawtypes") 
  Iterator iterator = entrySet.iterator(); iterator.hasNext();) { 
    @SuppressWarnings("unchecked") 
    Entry<String, String> entry = (Entry<String, String>) iterator 
        .next(); 
    System.out.println("02)entrySet,iterator: key:" + entry.getKey() 
        + " value:" + entry.getValue()); 
  } 
 
  //3.推荐,容量最大 
  for (Entry<String, String> entry : entrySet) { 
    System.out.println("03)entrySet,foreach:key:" + entry.getKey() 
        + " value:" + entry.getValue()); 
  } 
 
  Collection<String> values = map.values(); 
  //4.只循环出value的方法 
  for (String value : values) { 
    System.out.println("04)values,just for values,value:" + value); 
  } 
 
} 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • 基于Java Socket实现一个简易在线聊天功能(一)

    基于Java Socket实现一个简易在线聊天功能(一)

    这篇文章主要给大家介绍基于Java Socket实现一个简易在线聊天功能(一),分为客户端和服务端两段代码,非常具有参考价值,感兴趣的朋友一起学习吧
    2016-05-05
  • SpringBoot整合FastDFS方法过程详解

    SpringBoot整合FastDFS方法过程详解

    这篇文章主要介绍了SpringBoot整合FastDFS方法过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • spring@value注入配置文件值失败的原因分析

    spring@value注入配置文件值失败的原因分析

    这篇文章主要介绍了spring@value注入配置文件值失败的原因分析,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • Java8 Stream流的常用方法汇总

    Java8 Stream流的常用方法汇总

    Java8 API添加了一个新的抽象称为流Stream,可以让你以一种声明的方式处理数据,下面这篇文章主要给大家介绍了关于Java8 Stream流的常用方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • Java 生成随机单据号的实现示例

    Java 生成随机单据号的实现示例

    本文主要介绍了Java 生成随机单据号的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-09-09
  • JAVA如何定义构造函数过程解析

    JAVA如何定义构造函数过程解析

    这篇文章主要介绍了JAVA如何定义构造函数过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • Spring中的@EnableConfigurationProperties使用方式以及作用详解

    Spring中的@EnableConfigurationProperties使用方式以及作用详解

    这篇文章主要介绍了Spring中的@EnableConfigurationProperties使用方式以及作用详解,使用了 @ConfigurationProperties 注解的配置类生效,将该类注入到 IOC 容器中,交由 IOC 容器进行管理,此时则不用再配置类上加上@Component,需要的朋友可以参考下
    2024-01-01
  • Java CAS操作与Unsafe类详解

    Java CAS操作与Unsafe类详解

    这篇文章主要介绍了Java CAS操作与Unsafe类的相关资料,帮助大家更好的理解和学习使用Java,感兴趣的朋友可以了解下
    2021-02-02
  • Java使用JDBC连接Oracle_MSSQL实例代码

    Java使用JDBC连接Oracle_MSSQL实例代码

    这篇文章主要介绍了Java使用JDBC连接Oracle_MSSQL实例代码,需要的朋友可以参考下
    2014-01-01
  • 如何保证RabbitMQ全链路数据100%不丢失问题

    如何保证RabbitMQ全链路数据100%不丢失问题

    这篇文章主要介绍了如何保证RabbitMQ全链路数据100%不丢失问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05

最新评论