lambda表达式的一些简单例子

x -> 3 * x

//接收一个数字类型的参数,返回其3倍的值

(x, y) -> x – y

//接收2个数字参数,并返回他们的差值

(String s) -> System.out.print(s)

//接受一个 string 对象,并在控制台打印,不返回任何值

Lambda在语法上通常包含了一个参数列表 (argument list), 一个箭头符号 -> 和函数体 (body) 。函数体可以是一个表达式也可以是一个声明语句。在表达式中, 函数体被计算并且返回。在函数体中的计算类似于在方法中,return关键字会把控制权交给匿名函数的调用者;break和continue只能使用在循环(loop)中;如果函数体需要计算出一个结果,函数内每一条逻辑路径必须提供一个返回值或者抛出异常。

在实际运用中使用lambda表达式

假设有一个玩家List ,程序员可以使用 for 语句来遍历

String[] atp = {"Mike", "Bob", "lily", "David", "Andy"};

List players = Arrays.asList(atp);

// 以前的循环方式

for (String player : players) {

System.out.print(player + "; ");

}

// 使用 lambda 表达式以及函数操作

players.forEach((player) -> System.out.print(player + "; "));

// 在 Java 8 中使用双冒号操作符

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

使用Lambdas排序集合

String[] players = {"Mike", "Bob", "lily", "David", "Andy"};

//使用匿名内部类根据 name 排序 players

Arrays.sort(players, new Comparator() {

@Override

public int compare(String s1, String s2) {

return (s1.compareTo(s2));

}

});

//使用 lambda expression 排序 players

Comparator sortByName = (String s1, String s2) -> (s1.compareTo(s2));

Arrays.sort(players, sortByName);

//或者

Arrays.sort(players, (String s1, String s2) -> (s1.compareTo(s2)));

java lambda函数_Java中的Lambda函数相关推荐

  1. java 匿名函数_Java中的lambda匿名函数使用

    Java中的lambda匿名函数使用 lambda匿名函数的使用是为了满足某些情况下需要临时定义函数,或者事先定义,需要时才使用.在python里面,lambda表达式的表达方式为:lambda 参数 ...

  2. java中的string函数_java中string.trim()函数的作用实例及源码

    trim()的作用:去掉字符串首尾的空格. public static void main(String arg[]){ String a=" hello world "; Str ...

  3. java random构造方法_Java中的Random()函数及两种构造方法

    Java中存在着两种Random函数: java.lang.Math.Random; 调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是 ...

  4. java compareTo 整数_Java中的compareTo()函数是怎么用的?

    展开全部 compareTo() 方法用于将 Number 对象与方32313133353236313431303231363533e4b893e5b19e31333366306535法的参数进行比较 ...

  5. java调用函数_Java中如何调用函数和自定义函数

    展开全部 1.调用函数方法:对象名.函数名 需要实例化对象,后调用 2.自定义32313133353236313431303231363533e4b893e5b19e31333365663433函数: ...

  6. java有没有回调函数_Java中的回调函数 - wangjianme的个人空间 - OSCHINA - 中文开源技术交流社区...

    Java代码的回调函数经常由框架或是系统定义,由程序开发人员填充. 它的最主要特点是即定义了调用的规范同时又非常的灵活. 回调函数有些类似于观察者模式,它们的区别在于:观察者模式返回的参数为Event ...

  7. scala 函数中嵌套函数_Scala中的嵌套函数 用法和示例

    scala 函数中嵌套函数 Scala中的嵌套函数 (Nested functions in Scala) A nested function is defined as a function whi ...

  8. oracle中转换函数,Oracle中的转换函数

    Oracle中的转换函数有三个,分别为to_char(),to_date(),to_number() 1.to_char()的用法 格式化当前的日期时间 select sysdate,to_char( ...

  9. java log日志函数_Java 中的 AWS Lambda 函数日志记录 - AWS Lambda

    AWS 文档中描述的 AWS 服务或功能可能因区域而异.要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门. 本文属于机器翻译版本.若本译文内容与英语原文存在差异,则一律以英文原文为准. Ja ...

  10. lambda java 表达式_Java中的Lambda表达式

    介绍 Lambda函数是 Java 8 附带的一项功能,它是该语言向 函数式编程 迈出的第一步,这是实现各种兼容 范例的 有用功能的普遍趋势. 引入lambda函数的动机主要是为了减少传递给类实例以模 ...

最新文章

  1. Linux在线求助 man page
  2. wireshark相关协议详解和nc命令建立对话
  3. sqlserver复习总结
  4. 容器编排技术 -- Kubernetes 为 Namespace 设置最小和最大内存限制
  5. Modown V1.9 WordPress资源素材付费下载Erphpdown主题模板原版
  6. Java中解密微信加密数据工具类
  7. Java邮件发送(使用javaMail包)
  8. 四、软考·系统架构师——软件工程基础
  9. canvas实现旋转缩放的方块
  10. c语言中特殊符号怎么定义,C语言特殊符号意义
  11. 30天完成700万营业额,这家珠宝店的营销模式,值得借鉴!
  12. 判断是不是数字 Java_java如何判断是不是数字
  13. 0007 将英尺转换为米制单位
  14. 解决报错:The Module Root specified is not a module according to Intellij
  15. “别具一格”的vue双向数据绑定原理
  16. 使用scrapy 框架来抓取100部美剧的信息
  17. 国内首个写作机器人上岗,1秒完成文章写作,就问你怕不怕!
  18. python3爬取网易云歌单数据清洗_实例 | 使用网易云音乐数据演示数据整合与数据清洗...
  19. ios 项目被拒绝各种理由
  20. 用友u8凭证打印模板调整方法

热门文章

  1. 【分享】Adobe Flash Player各版本安装包官方直接下载地址
  2. tplink 服务器未响应,详解win10安装tplink网卡免驱版无法用关键操作方法
  3. 鸿蒙系统怎么连wifi,鸿蒙入门:Hi3861 WiFi操作,热点连接
  4. FastJson之autotype bypass
  5. Windows API一日一练(69)GetTickCount函数
  6. php旧物交易开源代码_php二手市场交易系统毕业设计(含源文件)
  7. 【最全】微信支付宝小程序蓝牙API开锁全流程
  8. Linux环境下安装yafu
  9. 【IT之路】LoadRunner系列-Loadrunner 11破解汉化
  10. [LoadRunner]LR11安装或破解时报错的解决方法