Lambda表达式详解(优缺点以及简单用法)

本文详细介绍了Java中的Lambda表达式的优缺点。优点包括简洁性、支持并行计算,可能成为未来编程趋势;缺点则在于非并行计算时效率不提升,调试困难,且对未接触过的程序员来说难以理解。文中通过示例展示了lambda在forEach、sort、TreeSet排序、集合遍历及多线程输出等场景的应用。
摘要由CSDN通过智能技术生成
lambda优缺点:

优点:

  1. 简洁。
  2. 非常容易并行计算。
  3. 可能代表未来的编程趋势。

缺点:

  1. 若不用并行计算,很多时候计算速度没有比传统的 for 循环快。(并行计算有时需要预热才显示出效率优势)
  2. 不容易调试。
  3. 若其他程序员没有学过 lambda 表达式,代码不容易让其他语言的程序员看懂。
    总结:
    lambda表达式中forEach方法与我们的普通的for循环输出效果相差无几

最主要的是我们可以用这个表达式来装逼

符号表示:
lambda是一个匿名函数
()里的表示参数
{}里的表示方法体
-> 表示lambda运算符

集中简单的运用方法:

执行方法1
这是用的lambda方法中的sort方法
在sort方法中 o1表示最后边的值、o2表示倒数第二个值 处理元素是从后边开始的

public class Exersice1 {
   
    //集合排序
    /**ArrayList<>*/
    public static void main(String[] args) {
   
        /**
         * 需求:
         * 已知在ArryList中有若干个Person类对象,将这些Person对象按照年龄来降序排序
         */

        List<Person> list = new ArrayList<>();

        list.add(new Person("小蓝",10));
        list.add(new Person("小红",11));
        list.add(new Person("小紫",18));
        list.add(new Person("小橙",20));

        //排序
        //在sort方法中,o1是最后面的元素,o2是倒数第二个元素,以此类推,流是处理元素是从后面开始取值。
        list.sort((o1,o2) -> o2.age - o1.age);

        System.out.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值