JavaSE-22.1.5【Lambda表达式的省略模式】
1 package day13.lesson1.p1; 2 3 /* 4 1.6 Lambda表达式的省略模式 5 6 参数类型可以省略。但是有多个参数的情况下,不能只省略一个 7 如果参数有且仅有一个,那么小括号可以省略 8 如果代码块的语句只有一条,可以省略大括号和分号,和return关键字 9 */ 10 public class LambdaDemo { 11 public static void main(String[] args) { 12 useAddable((int x, int y)->{ 13 return x + y; 14 }); 15 16 useAddable((x, y)->{ 17 return x + y; 18 }); 19 20 useFlyable((String s)->{ 21 System.out.println(s); 22 System.out.println("小风车,呼,呼呀"); 23 }); 24 25 useFlyable((s)->{ 26 System.out.println(s); 27 System.out.println("小风车,呼,呼,呼呀"); 28 }); 29 30 useFlyable(s->{ 31 System.out.println(s); 32 System.out.println("小风车,呼,呼,呼,呼呀"); 33 }); 34 35 useFlyable(s -> System.out.println(s)); 36 useAddable((x, y) -> x+y); 37 } 38 39 private static void useAddable(Addable a){ 40 int sum = a.add(10, 20); 41 System.out.println(sum); 42 } 43 44 private static void useFlyable(Flyable f){ 45 f.fly("风和日丽,晴空万里"); 46 } 47 } 48 49 interface Addable{ 50 int add(int x, int y); 51 } 52 53 interface Flyable{ 54 void fly(String s); 55 }