java 拉姆达表达式_Java8中foreach与拉姆达表达式的组合使用

java 拉姆达表达式_Java8中foreach与拉姆达表达式的组合使用1.forEachandMap1.1通常这样遍历一个MapMapitems=newHashMap<>();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.Entryent…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1. forEach and Map

1.1 通常这样遍历一个Map

67fa819d62cfdf3e5b31a3247f228e2f.gif

Map 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 entry : items.entrySet()) {

System.out.println(“Item : ” + entry.getKey() + ” Count : ” + entry.getValue());

}

67fa819d62cfdf3e5b31a3247f228e2f.gif

1.2 在java8中你可以使用  foreach  + 拉姆达表达式遍历

67fa819d62cfdf3e5b31a3247f228e2f.gif

Map 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);

if(“E”.equals(k)){

System.out.println(“Hello E”);

}

});

67fa819d62cfdf3e5b31a3247f228e2f.gif

2. forEach and List

2.1通常这样遍历一个List.

67fa819d62cfdf3e5b31a3247f228e2f.gif

List items = new ArrayList<>();

items.add(“A”);

items.add(“B”);

items.add(“C”);

items.add(“D”);

items.add(“E”);

for(String item : items){

System.out.println(item);

}

67fa819d62cfdf3e5b31a3247f228e2f.gif

2.2在java8中你可以使用   foreach + 拉姆达表达式 或者 method reference(方法引用)

67fa819d62cfdf3e5b31a3247f228e2f.gif

List items = new ArrayList<>();

items.add(“A”);

items.add(“B”);

items.add(“C”);

items.add(“D”);

items.add(“E”);

//lambda

//Output : A,B,C,D,E

items.forEach(item->System.out.println(item));

//Output : C

items.forEach(item->{

if(“C”.equals(item)){

System.out.println(item);

}

});

//method reference

//Output : A,B,C,D,E

items.forEach(System.out::println);

//Stream and filter

//Output : B

items.stream()

.filter(s->s.contains(“B”))

.forEach(System.out::println);

67fa819d62cfdf3e5b31a3247f228e2f.gif

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/191751.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • html grid_react datagrid

    html grid_react datagridASP.NETMVC3Beta初体验之WebGrid   ASP.NETMVC3Beta中除了推出一种新的视图引擎Razor。还推出了几种新的HtmlHelper。我比较关注的是WebGrid,这篇文章将介绍一下WebGrid的使用。WebGrid提供了分页和排序的功能,在此之前在MVC中分页和排序时需要自己去写的。这篇文章将分别介绍在aspx视图引擎和Ra

    2022年10月6日
    3
  • 怎么安装纯净版win10_影视大全纯净版app下载

    怎么安装纯净版win10_影视大全纯净版app下载文章目录1.制作系统安装盘1.1准备U盘以及一台用来制作安装盘的电脑1.2下载WIN10安装包1.3制作完成的系统安装盘1.4U盘格式化应选择的文件系统2.安装WIN10操作系统前的准备2.1插入系统安装盘2.2设置U盘(系统安装盘)为第一启动项2.3注意:启动引导方式的选择2.4补充:磁盘分区格式(MBR分区和GPT分区)和启动引导(Legacy和UEFI)的关系3.开始安装WIN10操作系统3.1将系统直接安装到固态硬盘内(不分区)3.2将固态硬盘分区后,将系统安装到其中一个

    2022年8月11日
    8
  • 二进制安装MySQL报错FATAL ERROR: Could not find my_print_defaults

    二进制安装MySQL报错FATAL ERROR: Could not find my_print_defaults[root@locahostmysql]#./scripts/mysql_install_db–user=mysql–basedir=/application/mysql/–datadir=/application/mysql/data/FATALERROR:Couldnotfindmy_print_defaultsThefollowingdirectoriesweres

    2025年5月26日
    1
  • es6数组处理方法整理

    es6数组处理方法整理数组常用.push().pop().unshift().shift().splice(i,n)删除,原数组被从i删除n个元素,返回被删掉的元素.slice(start,end)获取子数组,原数组不变,返回切出来的元素.concat().split()字符串变数组.sort()排序.reverse()翻转遍历处理.map(callback)遍历处…

    2022年5月24日
    39
  • 「从零单排canal 07」 parser模块源码解析

    「从零单排canal 07」 parser模块源码解析

    2020年11月19日
    212
  • 初识ABP vNext(7):vue身份认证管理&租户管理

    初识ABP vNext(7):vue身份认证管理&租户管理

    2020年11月20日
    144

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号