lambda表達式帶參數:
1 package cn.ftf.thread; 2 /** 3 * lambda表達式帶參數 4 * @author房廷飛 5 * 6 */ 7 public class LambdaTest03 { 8 public static void main(String[] args) { 9 ILove love=(int a)->{ //可以省略int,自定跟接口匹配。只有一個參數的時候()也可以省略,如果只有一行代碼,{ }也可以省略! 10 System.out.println("i love lambda "+a); 11 }; 12 love.lambda(100); 13 } 14 } 15 interface ILove{ 16 void lambda(int a); 17 }
帶參數和返回值 例一:
package cn.ftf.thread; /** * lambda表達式帶參數,有返回值 * @author房廷飛 * */ public class LambdaTest04 { public static void main(String[] args) { ILove love=(int a,int b)->{ //可以省略int,自定跟接口匹配。只有一個參數的時候()也可以省略,如果只有一行代碼,{ }也可以省略! System.out.println("i love lambda "+(a+b)); return a+b; }; System.out.println(love.lambda(100,200)); } } interface ILove{ int lambda(int a,int b); }
帶參數和返回值 例二:
1 package cn.ftf.add; 2 3 public class AddableDemo { 4 public static void main(String[] args) { 5 useAddable((int a,int b)->{ 6 return a+b; 7 }); 8 } 9 10 private static void useAddable(Addable a) { 11 int sum=a.add(2, 3); 12 System.out.println(sum); 13 } 14 } 15 16 interface Addable { 17 int add(int a,int b); 18 19 }