【说站】java懒惰评估如何实现
2024-12-29
6
java懒惰评估如何实现
说明
1、惰性评估是将表达式的评估延迟到需要时才进行的过程。Java是严格的立即赋值评估。
2、可以使用lambda表达式和高阶函数将其重写为延迟评估的版本。
实例
public class LazySample { public static void main(String[] args) { //这是一个lambda表达式,表现为闭包 UnaryOperator<Integer> add = t -> { System.out.println("executing add"); return t + t; }; //这是一个lambda表达式,表现为闭包 UnaryOperator<Integer> multiply = t -> { System.out.println("executing multiply"); return t * t; }; //传递Lambda闭包而不是普通函数 System.out.println(addOrMultiply(true, add, multiply, 4)); System.out.println(addOrMultiply(false, add, multiply, 4)); } //这是一个高阶函数 static <T, R> R addOrMultiply( boolean add, Function<T, R> onAdd, Function<T, R> onMultiply, T t ) { // Java的?会懒惰计算表达式,因此仅执行所需的方法 return (add ? onAdd.apply(t) : onMultiply.apply(t)); } }
以上就是java懒惰评估的实现,希望对大家有所帮助。更多Java学习指路:Java基础
本教程操作环境:windows7系统、java10版,DELL G3电脑。
更新于:1天前赞一波!
相关文章
- 【说站】python中异步非阻塞如何实现
- 【说站】java中final域的内存语义理解
- 【说站】java循环和递归的区别
- 【说站】java枚举如何实现单例
- 【说站】java中enumerate()的复制
- 【说站】java线程锁死是什么
- 【说站】java调用shell脚本的方法
- 【说站】java多线程的作用
- 【说站】java中ThreadGroup如何创建
- 【说站】java中RMI的原理分析
- 【说站】java继承中有哪些注意点
- 【说站】java内存间交互规则
- 【说站】java RabbitMQ消息队列是什么
- 【说站】java中jni是什么
- 【说站】java中有哪些特殊monitor
- 【说站】java引发死锁的四种情况
- 【说站】python数据拼接如何实现
- 【说站】python库如何实现对象的转换
- 【说站】java setPriority()设置优先级
- 【说站】java isInterrupted()如何判断线程
文章评论
评论问答