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 }
