Java 8
lambda 表达式
lambada需要接口中只有一个有抽象方法
@FunctionalInterface 可以检查类是否为函数式 也就是是否只有一个抽象方法
代码格式
格式 () -> {}
圆括弧中添加参数 {} 中添加函数体内容
若只有一个参数 可以省略()
若只有一条语句 可以省略 {}
若只有一条语句 return 也可以不用写
如下代码
@FunctionalInterface
public interface Calc {
public Integer add(int a, int b);
}
public class Main {
public static void main(String[] args) {
Calc calc = (a, b) -> a + b;
Integer add = calc.add(10, 20);
System.out.println(add);
}
}
四大函数接口

对传入的accept参数进行操作 无返回值
调用lmbda表达式 重写accept方法 进行操作
public class Main {
public static void main(String[] args) {
ConsumerLambda consumerLambda = new ConsumerLambda();
consumerLambda.happy(10000D, (money) -> {
System.out.println("消费:" + money);
});
}
}
class ConsumerLambda {
public void happy(Double money, Consumer<Double> consumer) {
consumer.accept(money);
}
}
steam
可以对集合进行一系列过滤操作
虽然道路是曲折的,但前途是光明的。

浙公网安备 33010602011771号