lambda 求和_最火的java8新特性:Lambda 表达式

主要内容

1. Lambda 表达式
2. 函数式接口
3. 方法引用与构造器引用
4. Stream API
5. 其他新特性

Java 8新特性简介

速度更快
代码更少(增加了新的语法 Lambda 表达式)
强大的 Stream API
便于并行
最大化减少空指针异常 Optional

1、Lambda表达式

Lambda 是一个匿名函数

在Java 语言中引入了一个新的语法元
素和操作符。这个操作符为 “->” , 该操作符被称
为 Lambda 操作符或剪头操作符。它将 Lambda 分为
两个部分:
左侧:指定了 Lambda 表达式需要的所有参数
右侧:指定了 Lambda 体,即 Lambda 表达式要执行
的功能。

2、Lambda 表达式语法

语法格式一:无参,无返回值,Lambda 体只需一条语句

Runnable r1 = () → System.out.println("hello world");

语法格式二:Lambda 需要一个参数

Consumerfun = (args) → System.out.println(args);

语法格式三:Lambda 只需要一个参数时,参数的小括号可以省略

Consumerfun = args → System.out.println(args);

语法格式四:Lambda 需要两个参数,并且有返回值

BinaryOperator<Long> bo = (x, y) → {
    System.out.println("hello world");reurn x + y;}

语法格式五:当 Lambda 体只有一条语句时,return 与大括号可以省略

BinaryOperator<Long> bo = (x, y) → x + y;

语法格式六:数据类型可以省略,因为可由编译器推断得出,称为“类型推断”

BinaryOperator<Long> bo = (Longx, Long y) → {
    System.out.println("hello world");reurn x + y;}

类型推断:
上述 Lambda 表达式中的参数类型都是由编译器推断
得出的。Lambda 表达式中无需指定类型,程序依然可
以编译,这是因为 javac 根据程序的上下文,在后台
推断出了参数的类型。Lambda 表达式的类型依赖于上
下文环境,是由编译器推断出来的。这就是所谓的
“类型推断”

2、函数式接口

(1) 只包含一个抽象方法的接口ÿ

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值