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内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 关于pytorch相关部分矩阵变换函数的问题分析

    关于pytorch相关部分矩阵变换函数的问题分析

    这篇文章主要介绍了pytorch相关部分矩阵变换函数,包括tensor维度顺序变换BCHW顺序的调整,矩阵乘法相关函数,矩阵乘,点乘,求取矩阵对角线元素或非对角线元素的问题,本文给大家介绍的非常详细,需要的朋友可以参考下
    2022-03-03
  • 基于SpringBoot上传任意文件功能的实现

    基于SpringBoot上传任意文件功能的实现

    下面小编就为大家带来一篇基于SpringBoot上传任意文件功能的实现。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • Spring Boot实战之发送邮件示例代码

    Spring Boot实战之发送邮件示例代码

    本篇文章主要介绍了Spring Boot实战之发送邮件示例代码,具有一定的参考价值,有兴趣的可以了解一下。
    2017-03-03
  • 详解基于IDEA2020.1的JAVA代码提示插件开发例子

    详解基于IDEA2020.1的JAVA代码提示插件开发例子

    这篇文章主要介绍了详解基于IDEA2020.1的JAVA代码提示插件开发例子,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • spring boot validation参数校验与分组嵌套各种类型及使用小结

    spring boot validation参数校验与分组嵌套各种类型及使用小结

    参数校验基本上是controller必做的事情,毕竟前端传过来的一切都不可信,validation可以简化这一操作,这篇文章主要介绍了spring boot validation参数校验分组嵌套各种类型及使用小结,需要的朋友可以参考下
    2023-09-09
  • Spring Boot中使用AOP统一处理web层异常的方法

    Spring Boot中使用AOP统一处理web层异常的方法

    这篇文章主要介绍了Spring Boot中使用AOP统一处理web层异常的相关资料,需要的朋友可以参考下
    2018-03-03
  • 显示SonarQube私有项目徽章方案流程

    显示SonarQube私有项目徽章方案流程

    这篇文章主要为大家介绍了如何显示SonarQube私有项目徽章方案的流程,sonarQube目前不支持私有项目的徽章图片获取,这个问题早在 2018年就在sonar社区里有过激烈的讨论,至今无果,只能自己寻求一种可以快速实施的方案
    2022-02-02
  • SprintBoot深入浅出讲解场景启动器Starter

    SprintBoot深入浅出讲解场景启动器Starter

    本篇文章将和大家分享一下 Spring Boot 框架中的 Starters 场景启动器的内容,关于 Starters 具体是用来做什么的,以及在开发 Spring Boot项目前,要如何自定义一个 Starters 场景启动器
    2022-06-06
  • Java实现雪花算法的原理和实战教程

    Java实现雪花算法的原理和实战教程

    这篇文章主要介绍了Java实现雪花算法的原理和实战教程,本文通过语言表述和代码的实现讲解了该项算法,,需要的朋友可以参考下
    2021-06-06
  • Java如何通过反射方式生成数据库实体类

    Java如何通过反射方式生成数据库实体类

    这篇文章主要介绍了Java如何通过反射方式生成数据库实体类问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12

最新评论