Lamda表达式

理解Functional Interface(函数式接口)是学习Java8 lamda表达式的关键

函数时接口的定义

任何接口,如果只包含唯一一个抽象方法,那么这就是一个函数式接口.

对于函数式接口,我们可以通过lamda表达式来创建该接口的对象

 1 public class LamdaTest {
 2 
 3     public static void main(String[] args) {
 4         Love love =null;
 5         Love2 love2 =null;
 6         Love3 love3 =null;
 7         //1.lamda表示简化
 8          love = () -> { System.out.println("简化1"); };
 9 
10         //2.lamda参数简化
11          love = () -> { System.out.println("简化2"); };
12         love2 =(String a) -> { System.out.println("简化2.2"  + a); };
13         Love2 love2_2 =(a) -> { System.out.println("简化2.2_2"  + a); };//简化参数类型
14         love3 =(a,b) -> { System.out.println("简化2.3" +a +"--" + b); };
15 
16         //3.lamda简化括号
17         love2 = a -> { System.out.println("简化3"  + a); };
18         love3 =(a,b) -> { System.out.println("简化3.1" +a +"--" + b); };//2个参数必须要有小括号
19         love.love();
20         love2.love("to");
21         love2_2.love("to");
22         love3.love("me", "you");
23 
24     }
25 }
26 
27 interface Love {
28     void love();//有且只有一个方法
29 }
30 
31 interface Love2 {
32     void love(String to);//有且只有一个方法
33 }
34 
35 interface Love3 {
36     void love(String from, String to);//有且只有一个方法
37 }

 

posted @ 2020-09-16 14:39  野兽Gentleman  阅读(225)  评论(0编辑  收藏  举报