java函数式编程的形式
2023-09-11 14:18:43 时间
java中没有真正的函数变量;
一、所有的函数(拉姆达)表达式,都被解释为functional interface
@FunctionalInterface
interface GreetingService
{
void sayMessage(String message);
二、通过返回容器类型实现串联;
prices.stream()
.filter(price -> price.compareTo(BigDecimal.valueOf(20)) > 0)
.map(price -> price.multiply(BigDecimal.valueOf(0.9)))
.reduce(BigDecimal.ZERO, BigDecimal::add);
三、函数式接口
函数式接口可以对现有的函数友好地支持 lambda。
JDK 1.8 之前已有的函数式接口:
- java.lang.Runnable
- java.util.concurrent.Callable
- java.security.PrivilegedAction
- java.util.Comparator
- java.io.FileFilter
- java.nio.file.PathMatcher
- java.lang.reflect.InvocationHandler
- java.beans.PropertyChangeListener
- java.awt.event.ActionListener
- javax.swing.event.ChangeListener
JDK 1.8 新增加的函数接口:
- java.util.function
参考文献
https://www.runoob.com/java/java8-functional-interfaces.html
相关文章
- 深入浅出: Java回调机制(异步)
- Java实现 蓝桥杯 算法提高 分解质因数(暴力)
- Java 第十一届 蓝桥杯 省模拟赛 梅花桩
- Java实现 LeetCode 524 通过删除字母匹配到字典里最长单词(又是一道语文题)
- 对象存储在什么地方(java编程思想)
- 基于java.nio.channels的编程实践-II
- java编程风格
- 快学Java SE8--Java8函数式编程(二)
- java gui编程:swing创建窗体和进度条代码示例
- Java快速排序的调试
- paip.提升效率---filter map reduce 的java 函数式编程实现
- java 调用打印机 打印服务
- Java编程题:判断某一数字是否为2的幂次方
- 【java】Java经典面试题整理(附答案)
- 【java】Java生成微信小程序二维码
- java unicode编程
- Java学习路线-12:Lambda表达式与函数式编程
- JavaSE学习总结(三)——Java语言编程练习、格式化字符与常量
- Java并发编程:并发容器之CopyOnWriteArrayList
- Java并发编程:Callable、Future和FutureTask
- Lambda 表达式有何用处?史上最好的java 函数编程介绍 强烈推荐!!!
- Java开发『函数式编程』——函数式接口
- java===java基础学习(3)---数据类型转换,运算符级别,枚举类型
- 华为校招机试 - 工单调度策略(Java & JS & Python)
- 【java】Java并发编程--Java实现多线程的4种方式
- 【java】Java并发编程系列-基础知识(非常详细哦)
- Java开发『函数式编程』——函数式接口