Java 8中新增了lambda表達式 簡單的經過代碼分析一下lambda表達式的簡單用法。ide
interface Print{ void print(String val); } //第三個例子 interface IPrint{ void print(); } public class LambdaDemo { public static void main(String args[]){ LambdaDemo L=new LambdaDemo(); String some="打印輸出"; /*不用lamda表達式的常規方法*/ // Print print=new Print() { // @Override // public void print(String val) { // System.out.println(val); // } // }; /*標準的lamda表達式*/ // Print print=(String val)->{ // System.out.println(val); // }; /*這裏是由於只有一個參數*/ Print print=val -> System.out.println(val); L.PrintSomething(some,print); /*還能夠直接放在語句中*/ L.PrintSomething(some,val -> System.out.println(val)); /*第二個例子*/ LambdaDemo t=new LambdaDemo(); LambdaDemo.IAdd s=((x, y) -> x+y); System.out.println(t.add(1,2,s)); /*第三個例子*/ // IPrint t =new IPrint(){ // @Override // public void print() { // System.out.println("匿名函數實現"); // } // }; // t.print(); //這是使用匿名函數調用接口中的方法 IPrint w=()->{System.out.println("匿名函數的lambda實現");}; w.print(); /*lambda表達式最重要的就是省去了匿名對象的繁雜,使代碼更加簡潔*/ } public void PrintSomething(String something,Print print){ print.print(something); } /*第二個例子*/ public int add(int x, int y, LambdaDemo.IAdd iAdd){ return iAdd.sum(x, y); } interface IAdd { int sum(int x, int y); } }