函数式编程
Functional Programming
函数式编程到底是什么?
笔者看来,当我们工作中的某个业务逻辑比较复杂时,我们都可以思考一个问题:如何将这类业务里各要素之间的映射关系抽象出来呢?
而当我们在程序世界抽象出来这个关系,知道我们要做什么后,我们便通过操作各种数据来达成我们的输出目的,这就是函数式编程的思想。
函数式编程优点
- 并发多线程编程,可以高效处理大数量集合
- 减少嵌套
- 提高代码可读性
Lambada表达式
话不多说,直接上函数式编程的基石操作:Lambda表达式
概述
Lambda是JDK8的一个语法糖,可以简化一些匿名内部类的写法,重点关注对数据进行什么操作。
基础格式
(参数列表)-> {代码}
实际使用
创建线程并启动时使用
( 匿名内部类里接口只有一个抽象方法被重写)
new Thread(new Runnable(){
@Override
pubilic void run(){
业务代码语句;
}
}).start();
使用Lambda表达式简化:
(只需要考虑参数列表和方法体)
new Thread(() ->{
xxx(业务方法代码块)
}).start();
简写tips
- 可以省略参数类型
- 方法体只有一句代码时,return和该代码的分号可省略
- 只有一个参数时可以不写括号
- 当然,都可以不省略
总结
Lambda表达式本质上来看还是不难的,主要关键点便是:
- 确定可以简化(匿名内部类里接口只有一个抽象方法)
- 去找参数和方法体,直接按格式写好即可
=======================================
以上,便是笔者通过视频文章做出的关于Lambda表达式的学习总结,码字不易,希望大家多多支持小soul!😀