扫码阅读
手机扫码阅读
WebFlux 前置知识(二)
9 2024-11-06
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
查看原文:WebFlux 前置知识(二)
文章来源:
江南一点雨
扫码关注公众号
松哥 Spring Boot 视频教程与送书活动
松哥完成了原创的 Spring Boot 视频教程,感兴趣者可查看。上周送书活动中,留言超过300条,但限于微信规定,仅选了100条。虽然不是每个人都能得到书,松哥已认真阅读所有留言,并考虑下次改为抽奖方式。
函数式编程知识点
继上篇文章的 Lambda 表达式和函数接口讨论,本篇将介绍方法引用、变量引用、类型推断和级联表达式四个概念,作为学习 WebFlux 的前置知识点。
1. 方法引用
方法引用是 Lambda 表达式的一种,使用 "::" 操作符。它用来简化代码,提高可读性,可用于访问类、实例已存在的方法和构造方法。
1.1. 四种方法引用
- 静态方法引用:直接通过类名引用静态方法,如
Function func = String::valueOf;
替换a -> String.valueOf(a);
- 实例方法引用:通过实例名引用方法,如
Consumer consumer = System.out::println;
替换s -> System.out.println(s);
- 构造方法引用:引用构造方法创建对象,如
Supplier supplier = Cat::new;
替换() -> new Cat();
- 数组构造方法引用:引用数组构造方法,如
IntFunction func = int[]::new;
替换(i) -> new int[i];
2. 变量引用
在使用 Lambda 表达式时,外部定义的变量需是 final 类型或事实上的 final,以便在内部类中使用。
3. 类型推断
Lambda 表达式通常能自动推断出类型,但在方法重载等特定情况下可能需要显式类型转换。
4. 级联表达式
Lambda 表达式可根据需求编写多层级联形式,如 Function func = x -> y -> z -> x + y + z;
。
参考资料
- https://blog.csdn.net/sun_promise/article/details/51190256
- https://www.jianshu.com/p/4a3da6a11b58
想要了解更多内容?
查看原文:WebFlux 前置知识(二)
文章来源:
江南一点雨
扫码关注公众号
江南一点雨的其他文章
加入社区微信群
与行业大咖零距离交流学习
软件研发质量管理体系建设
白皮书上线