Lambda 表达式
由于 JUC 案例中经常使用到 Lambda 表达式,因此,在此插入一篇博文记述 Lambda 表达式的相关内容。
1、基本语法
interface Fun{
public void sayHello();
}
public class Main{
public static void main(String[] args){
Fun fun = () -> {System.out.println("Hello world");};
}
}
2、带参数和返回值
public class LambdaDemo {
public static void main(String[] args) {
Fun fun =
(x,y) -> {
System.out.println("add");
return x+y;
};
fun.add(3,5);
}
}
3、接口方法默认实现
@FunctionalInterface
interface Fun{
public int add(int x, int y);
default float div(float x, int y){
System.out.println("div");
return x/y;
}
}
4、静态方法实现
@FunctionalInterface
interface Fun{
public int add(int x, int y);
default float div(float x, int y){
System.out.println("div");
return x/y;
}
default int subtract(int x, int y){
System.out.println("subtract");
return x-y;
}
public static int avg(int x, int y){
return (x+y)/2;
}
}