Java8中forEach语句循环一个List和Map

 更新时间:2021年02月28日 08:37:34   作者:软测小生  
这篇文章主要给大家介绍了关于Java8中forEach语句循环一个List和Map的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

在这篇文章中,我将向您展示如何用新的Java 8 forEach语句循环一个List和Map。

1、forEach 和 Map

1.1、常规循环Map常用的方法。

Map<String ,Integer> items = new HashMap<>(); 

items.put("A",10); 
items.put("B",20); 
items.put("C",30); 
items.put("D",40); 
items.put("E",50); 
items.put("F",60); 

for(Map.Entry<String Integer> entry : items.entrySet()){ 
 System.out.println("Item : "+enty.getKey() + " Count :" + entry.getVlaue()) 
} 

1.2 、在Java 8中, 你可以用forEach + lambda表达式来循环Map

Map<String, Integer> items = new HashMap<>(); 
items.put("A", 10); 

items.put("B", 20); 
items.put("C", 30); 
items.put("D", 40); 

items.put("E", 50); 
items.put("F", 60); 
items.forEach((k,v)->System.out.println(" Item : "+ k + " Count : " + v)); 
//items.forEach((k,v)->{System.out.println(" Item : "+ k + " Count : " + v);}); 
items.forEach((k,v)->{ 
 System.out.println("Item : " + k + " Count : " + v); 
 if("E".equals(k)){ 
 System.out.println("Hello E"); 
 } 
}); 

2、forEach 和 List

2.1、常规的循环List的方法

 List<String> items = new ArrayList<>(); 
 items.add("Anna"); 
 items.add("Brian"); 
 items.add("Cici"); 
 items.add("Elena"); 
 //常规的循环List的方法 
 for(String item : items){ 
  System.out.println(item); 
 } 

2.2、在Java 8中, 你可以用forEach + lambda表达式  或者方法调用来循环Map

Map<String, Integer> items = new HashMap<>(); 
items.put("A", 10); 
items.put("B", 20); 
items.put("C", 30); 
items.put("D", 40); 
items.put("E", 50); 
items.put("F", 60); 
//在Java 8中, 你可以用forEach + lambda表达式来循环Map 
//输出上面put的所有列表 
items.forEach((k,v)->System.out.println(" Item : "+ k + " Count : " + v)); 
//items.forEach((k,v)->{System.out.println(" Item : "+ k + " Count : " + v);}); 
//输出上面put的所有列表 + Hello E 
items.forEach((k,v)->{ 
 System.out.println("Item : " + k + " Count : " + v); 
 if("E".equals(k)){ 
 System.out.println("Hello E"); 
 } 
}); 
Map
package com.foreach.learn; 
import java.util.HashMap; 
import java.util.Map; 
public class forEachLearnMap { 
 public static void main(String[] args) { 
 //forEach 和 Map 
 Map<String, Integer> items = new HashMap<>(); 
 items.put("A", 10); 
 items.put("B", 20); 
 items.put("C", 30); 
 items.put("D", 40); 
 items.put("E", 50); 
 items.put("F", 60); 
 //常规的循环Map的方法 
 for(Map.Entry<String, Integer> entry : items.entrySet()) { 
  System.out.println(" Item : "+ entry.getKey() + " Count : " + entry.getValue());  
 } 
 //在Java 8中, 你可以用forEach + lambda表达式来循环Map 
 //输出上面put的所有列表 
 items.forEach((k,v)->System.out.println(" Item : "+ k + " Count : " + v)); 
 //items.forEach((k,v)->{System.out.println(" Item : "+ k + " Count : " + v);}); 
 //输出上面put的所有列表 + Hello E 
 items.forEach((k,v)->{ 
  System.out.println("Item : " + k + " Count : " + v); 
 if("E".equals(k)){ 
  System.out.println("Hello E"); 
  } 
 });  

 } 

} 
Lsit:

package com.foreach.learn; 
import java.util.ArrayList; 
import java.util.List; 
public class forEachLearnList { 
 public static void main(String[] args) {  
 List<String> items = new ArrayList<>(); 
 items.add("Anna"); 
 items.add("Brian"); 
 items.add("Cici"); 
 items.add("Elena"); 
 //常规的循环List的方法 
 for(String item : items){ 
  System.out.println(item); 
 } 
 //在Java 8中, 你可以用forEach + lambda表达式 或者方法调用来循环Map 
 //lambda 
 //输出 : Anna, Brian, Cici, Elena 
 items.forEach(item->System.out.println(item)); 
 //输出 Cici 
 items.forEach(item->{ 
 if("Cici".equals(item)){ 
  System.out.println(item); 
  } 
 }); 
 //方法调用 
 //输出 : Anna, Brian, Cici, Elena 
 items.forEach(System.out::println); 
 //Stream and filter 
 //输出Brian 
 items.stream() 
 .filter(s->s.contains("Brian")) 
 .forEach(System.out::println); 
 } 

} 

总结

到此这篇关于Java8中forEach语句循环一个List和Map的文章就介绍到这了,更多相关Java8 forEach循环List和Map内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SpringBoot +Vue开发考试系统的教程

    SpringBoot +Vue开发考试系统的教程

    这篇文章主要介绍了SpringBoot +Vue开发考试系统,支持多种题型:选择题、多选题、判断题、填空题、综合题以及数学公式。支持在线考试,教师在线批改试卷。本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2020-05-05
  • Java 虚拟机(JVM)之基本概念详解

    Java 虚拟机(JVM)之基本概念详解

    下面小编就为大家带来一篇Java 虚拟机(JVM)之基本概念详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • JetBrains 产品输入激活码 Key is invalid 完美解决方案

    JetBrains 产品输入激活码 Key is invalid 完美解决方案

    JetBrains 系列产品(IDEA、Pycharm 等)使用本站破解教程 (opens new window),在输入激活码时,部分小伙伴反应说提示 Key is invalid 无法激活,今天小编给大家分享完美解决方案,感兴趣的朋友跟随小编一起看看吧
    2022-11-11
  • 总结Java中线程的状态及多线程的实现方式

    总结Java中线程的状态及多线程的实现方式

    Java中可以通过Thread类和Runnable接口来创建多个线程,线程拥有五种状态,下面我们就来简单总结Java中线程的状态及多线程的实现方式:
    2016-07-07
  • Java简易学生成绩系统写法实例

    Java简易学生成绩系统写法实例

    在本篇文章里小编给大家分享的是关于Java简易学生成绩系统写法实例以及相关知识点,有需要的朋友们可以学习下。
    2019-09-09
  • Spring Boot2开发之Spring Boot整合Shiro两种详细方法

    Spring Boot2开发之Spring Boot整合Shiro两种详细方法

    这篇文章主要介绍了Spring Boot2开发之Spring Boot整合Shiro详细方法,需要的朋友可以参考下
    2020-03-03
  • Spring中的依赖注入DI源码详细解析

    Spring中的依赖注入DI源码详细解析

    这篇文章主要介绍了Spring中的依赖注入DI源码详细解析,Spring的依赖注入(Dependency Injection,DI)是Spring框架核心的一部分,它是实现控制反转(Inversion of Control,IoC)的一种方式,需要的朋友可以参考下
    2023-11-11
  • Springboot静态资源访问实现代码解析

    Springboot静态资源访问实现代码解析

    这篇文章主要介绍了Springboot静态资源访问实现代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • Springboot @Configuration与自动配置详解

    Springboot @Configuration与自动配置详解

    这篇文章主要介绍了SpringBoot中的@Configuration自动配置,在进行项目编写前,我们还需要知道一个东西,就是SpringBoot对我们的SpringMVC还做了哪些配置,包括如何扩展,如何定制,只有把这些都搞清楚了,我们在之后使用才会更加得心应手
    2022-07-07
  • Java使用easyExcel批量导入数据详解

    Java使用easyExcel批量导入数据详解

    这篇文章主要介绍了Java使用easyExcel批量导入数据详解,通常我们会提供一个模板,此模块我们可以使用easyExcel导出数据生成的一个Excel文件当作模板,提供下载链接,用户在该文件内填入规定的数据格式以后可以批量导入数据到数据库中,需要的朋友可以参考下
    2023-08-08

最新评论