广告
返回顶部
首页 > 资讯 > 精选 >java中怎么利用lambda解决foreach循环问题
  • 273
分享到

java中怎么利用lambda解决foreach循环问题

2023-06-20 18:06:45 273人浏览 泡泡鱼
摘要

本篇文章给大家分享的是有关java中怎么利用lambda解决foreach循环问题,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、以前我们使用的for循环 &nbs

本篇文章给大家分享的是有关java中怎么利用lambda解决foreach循环问题,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

一、以前我们使用的for循环

    @Test    public void forTest() {        // 实例化一个List        List<Point> points = Arrays.asList(new Point(1, 2), new Point(2, 3));        System.out.println("循环操作前:" + points);        // for循环        for (int i = 0; i < points.size(); i++) {            points.get(i).translate(1, 1);        }        System.out.println("循环操作后:" + points);    }

二、后来使用foreach循环(感觉爽多了)

    @Test    public void forEachTest() {        List<Point> points = Arrays.asList(new Point(1, 2), new Point(2, 3));        System.out.println("循环操作前:" + points);        // foreach 循环        for (Point p : points) {            p.translate(1, 1);        }        System.out.println("循环操作后:" + points);    }

三、而大家可能很少了解ArrayList中的forEach方法

下面便是一个实例

    @Test    public void forEachMethodTest() {        List<Point> points = Arrays.asList(new Point(1, 2), new Point(2, 3));        System.out.println("循环操作前:" + points);                points.forEach(new Consumer<Point>() {            public void accept(Point t) {                t.translate(1, 1);            }        });        System.out.println("循环操作后:" + points);    }

ArrayList中的forEach方法源码实现

    default void forEach(Consumer<? super T> action) {        Objects.requireNonNull(action);        for (T t : this) {            action.accept(t);        }    }

四、最后,逼格最高,写法最简洁,用起来最爽的函数式写法

    @Test    public void lambdaForEachTest() {        List<Point> points = Arrays.asList(new Point(1, 2), new Point(2, 3));        System.out.println("循环操作前:" + points);                points.forEach(p -> p.translate(1, 1));        System.out.println("循环操作后:" + points);    }

四种方式的执行结果:

循环操作前:[java.awt.Point[x=1,y=2], java.awt.Point[x=2,y=3]]

循环操作后:[java.awt.Point[x=2,y=3], java.awt.Point[x=3,y=4]]

java Lambda 与forEach

lambda表达式

λ表达式本质上是一个匿名方法。

public int add(int x, int y) {        return x + y;    }

转成λ表达式后是这个样子:

(x, y) -> x + y; //返回两数之和

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 : " + entry.geTKEy() + " Count : " + entry.getValue());    }

2、使用 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);        if("E".equals(k)){            System.out.println("Hello E");        }    });

以上就是java中怎么利用lambda解决foreach循环问题,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网精选频道。

--结束END--

本文标题: java中怎么利用lambda解决foreach循环问题

本文链接: https://www.lsjlt.com/news/298883.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • java中怎么利用lambda解决foreach循环问题
    本篇文章给大家分享的是有关java中怎么利用lambda解决foreach循环问题,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、以前我们使用的for循环 &nbs...
    99+
    2023-06-20
  • java中lambda(函数式编程)一行解决foreach循环问题
    java lambda(函数式编程)一行解决foreach循环 首先给大家推荐《精通lambda表达式:java多核编程》 这本书详细介绍了lambda表达式从入门到理解、应用 下面...
    99+
    2022-11-12
  • Java中怎么forEach循环中使用lambda表达式
    本篇文章为大家展示了Java中怎么forEach循环中使用lambda表达式,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.数组怎么使用lambda数组不能直接在forEach中使用lambda表...
    99+
    2023-06-20
  • Java循环引用问题怎么解决
    在Java中,循环引用问题通常是指两个或多个对象相互引用,导致无法被垃圾回收器回收,从而造成内存泄漏的情况。要解决循环引用问题,可以...
    99+
    2023-10-07
    Java
  • js中如何解决foreach循环中遇到的问题
    这篇文章给大家分享的是有关js中如何解决foreach循环中遇到的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.列表页面用"foreach循环"的时候...
    99+
    2022-10-19
  • JavaScript循环问题怎么解决
    本文小编为大家详细介绍“JavaScript循环问题怎么解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“JavaScript循环问题怎么解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。颠倒顺序的问题在一些情...
    99+
    2023-07-06
  • java嵌套for循环大小问题怎么解决
    在解决Java嵌套for循环大小问题时,可以考虑以下几种方法:1. 使用不同的循环变量:在嵌套循环中使用不同的循环变量,确保内外两层...
    99+
    2023-09-13
    java
  • Java中Map循环遍历的效率问题怎么解决
    在Java中,Map的循环遍历可以通过使用不同的方法来提高效率:1. 使用entrySet()方法遍历:遍历Map的entrySet...
    99+
    2023-08-15
    Java Map
  • springboot怎么解决循环依赖问题
    在Spring Boot中解决循环依赖问题,可以尝试以下几种方法:1. 使用构造器注入:将循环依赖的对象注入到构造器中,并且使用`@...
    99+
    2023-09-27
    springboot
  • arduino无线循环问题怎么解决
    要解决Arduino无线循环问题,可以考虑以下几个方面:1. 检查代码逻辑:仔细检查代码中的循环语句,确保没有出现无限循环的情况。如...
    99+
    2023-08-20
    arduino
  • 怎么解决Spring循环依赖问题
    本篇内容介绍了“怎么解决Spring循环依赖问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!前言循环依赖...
    99+
    2022-10-19
  • Spring循环依赖问题怎么解决
    在Spring中,循环依赖问题是指两个或多个bean之间出现相互依赖的情况。由于Spring容器默认使用单例模式管理bean,因此循...
    99+
    2023-08-31
    Spring
  • 怎么在spring中解决循环依赖问题
    怎么在spring中解决循环依赖问题?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。setter singleton循环依赖使用SingleSetterBeanA依赖Sing...
    99+
    2023-06-08
  • Java循环内的回调函数问题怎么解决
    本篇内容介绍了“Java循环内的回调函数问题怎么解决”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!问题出现在循环体内的回调函数,用一个很简单...
    99+
    2023-06-04
  • java for循环内执行多线程问题怎么解决
    这篇文章主要介绍了java for循环内执行多线程问题怎么解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇java for循环内执行多线程问题怎么解决文章都会有所收获,下面我们一起来看看吧...
    99+
    2023-07-05
  • JS利用循环解决的一些常见问题总结
    目录1. 打印0-100中3的倍数2. 在页面中写入 1000-2000年中的闰年3. 打印100以内所有偶数的和4.求出1-1/2+1/3-1/4……1...
    99+
    2022-11-13
  • Javascript深度克隆中的循环引用问题怎么解决
    这篇文章主要介绍“Javascript深度克隆中的循环引用问题怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Javascript深度克隆中的循环引用问题怎么...
    99+
    2022-10-19
  • 怎么在Java8中利用forEach语句对List和Map进行循环
    本文章向大家介绍怎么在Java8中利用forEach语句对List和Map进行循环的基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。Java是什么Java是一门面向对象编程语言,可以编写桌面应用程序、Web应用程序...
    99+
    2023-06-06
  • 使用JSON.stringify时遇到的循环引用问题怎么解决
    这篇文章给大家分享的是有关使用JSON.stringify时遇到的循环引用问题怎么解决的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。程序员在日常做TypeScript/JavaScript开发时,经常需要将复杂的...
    99+
    2023-06-14
  • MySQL游标多循环一次的问题怎么解决
    这篇文章主要讲解了“MySQL游标多循环一次的问题怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL游标多循环一次的问题怎么解决”吧! ...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作