Lambda 表达式有何用处?如何使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Lambda 表达式有何用处?如何使用相关的知识,希望对你有一定的参考价值。

就地定义函数,把函数当成对象传递


例如在 java 引入 lambda 表达式以前,要按特定的方法对容器排序,需要写一个完整的类,继承 Comparator 接口,在其中实现 compare 方法,然后把这个类的对象传递给 Collections.sort 方法。

public class EmpSortByName implements Comparator<Employee>
public int compare(Employee o1, Employee o2) 
return o1.getName().compareTo(o2.getName());

用法

Collections.sort(coll, new EmpSortByName());


而在引入 lambda 表达式以后,根本不需要写新类型,直接把函数传给 Collections.sort 方法就可以了

Collections.sort(coll, (o1,02) -> o1.getName().compareTo(o2.getName()));

参考技术A

你这个问题,真的很难回答。

不过如果你想要了解Lambda。你需要先了解

    委托

    Linq

了解这2个,你基本也就知道Lambda是怎么一回事了。

本回答被提问者和网友采纳

什么是lambda?有什么好处

lambda 函数是一个可以接收任意多个参数(包括可选参数)并且返回单个表达式值的函数

1、lambda 函数比较轻便,即用即仍,很适合需要完成一项功能,但是此功能只在此一处使用,
连名字都很随意的情况下;
2、匿名函数,一般用来给 filter, map 这样的函数式编程服务;
3、作为回调函数,传递给某些应用,比如消息处理

 






以上是关于Lambda 表达式有何用处?如何使用的主要内容,如果未能解决你的问题,请参考以下文章

如何用 C# 中的函数语句替换 for 循环?

API是什么?有何用处,其中常用类

如何使用 lambda 表达式检查元素是不是存在?

如何取消订阅使用 lambda 表达式的事件?

如何取消订阅使用 lambda 表达式的事件?

如何在 Enumerable.Distinct() 中使用 lambda 表达式 [重复]