java函数式编程(lambda、Stream...)

一、lambda

(一)、使用

在Java中,Lambda表达式通常用于函数式接口,即只包含一个抽象方法的接口

只保留参数和方法体

(二)、例子

1、

//使用匿名内部类
button.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent e) {
        System.out.println("Button clicked");
    }
});

//使用Lambda表达式
button.addActionListener(e -> System.out.println("Button clicked"));

2、

(三)、省略规则

二、Stream流

(一)、概述

(二)、常用操作

1、创建流

2、中间操作

(1)、filter

(2)、map 

(3)、distinct

(4)、sorted

(5)、limit

(6)、skip

(7)、flatMap

3、终结操作

(1)、forEach

(2)、count

(3)、min&max

(4)、collect

(5)、anyMatch

 (6)、allMatch

(7)、noneMatch

(8)、findAny

(9)、findFirst

(10)、reduce

(三)、注意事项

三、Optional

(一)、概述

(二)、使用

1、创建对象(ofNullable)

不常用: 

2、安全消费值(ifPresent)

3、安全获取值

4、过滤(filter)

5、判断(isPresent)

6、数据转换(map)

四、函数式接口

(一)、概述

(二)、常见函数式接口

(三)、常用默认方法

五、方法引用

(一)、概述

(二)、基本格式

(三)、使用

1、引用类的静态方法

2、引用对象的实例方法

 

3、引用类的实例方法

4、构造器引用

 六、高级方法

(一)、基本数据类型优化

 (二)、并行流

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值