Lambda 表达式已阅
2024-09-07 13:06:19
Lambda 表达式已阅
君子之间淡如水,何谓淡如水?并不时常想起,但却无处不在。
背景:This is f**king why we code? 可以让Java 代码异常简洁的Lambda 表达式,了解一下。
一、Lambda 表达式简介
Lambda 表达式类似一种匿名函数,简单地说它就是没有声明的方法,即没有访问修饰符、返回值声明和名字,并且是伴随Java 8诞生的新特性;可以将其视为做一种速记,在你需要使用某个方法的地方写上Lambda 即便捷地使用该类;此外,当某个方法只使用一次,而且定义很简短,使用这种速记法替代非常有效,这样就不必在类中费力写声明与方法了,总之便捷简介。
二、为什么要使用Lambda
最直观的作用就是可以使Java 代码异常地简洁。
三、Lambda 表达式简单例子
把“一块代码”赋给一个Java变量:
/**
* 使用Lambda 把一块代码赋值给一个Java 变量
*/
public class Lambda { public static void main(String[] args) { // 一个完整的Lambda表达式声明
MyLambdaInterface myLambdaInterface = (s) -> s.startsWith("IOC") ? "IOC" : "gradle"; // 使用测试Lambda 表达式
System.out.println(myLambdaInterface.doSomeThings("IOC-gradle")); } public String codeBlock(String str){
return str.startsWith("IOC") ? "IOC" : "gradle";
} /**
* Lambda 函数式接口
* 加上一个声明@FunctionalInterface, 这样别人就无法在里面添加新的接口函数
*/
@FunctionalInterface
interface MyLambdaInterface{
String doSomeThings(String s);
} }
测试结果如下图:
图. Lambda 代码块赋值测试
君子之间淡如水,何谓淡如水?并不时常想起,但却无处不在。
最新文章
- dede 优化打开速度
- 《PHP Manual》阅读笔记2
- 提升效率(时间准确性),减少时间和资源的消耗——由89C52/89C51的定时器中断引出的一些问题
- 内省—beanutils工具包
- 《C#高级编程》之泛型--1创建泛型类
- Hybrid App简介
- 【SPOJ】Transposing is even more fun!
- EasyUI-DataGrid之批量删除
- filter高级应用
- FastReport 动态修改连接字符串
- Java实用知识记录 —— 截止到Java8
- Linux 容器 vs 虚拟机 —— 谁更胜一筹
- @media 针对不同的屏幕尺寸设置不同的样式
- JsChart组件使用
- day5 列表的增删改查
- leveldb 学习记录(一) skiplist
- hashCode相关性能优化
- mongodb.mongoose维护内嵌数组元素
- springboot项目中报错:listener does not currently know of SID given in connect descriptor
- Java:集合,对列表(List)中的自定义对象按属性(字段)排序(正序、倒序)的方法