java 8之Lambda 五種語法格式
阿新 • • 發佈:2018-12-19
語法格式一:無參、無返回值,lambda體只需一條語句
Runnable r1 =() -> System.out.print("hello");
以往程式碼如下:
Runnable runnable = new Runnable() { @Override public void run() { System.out.print("hello"); } };
語法格式二:Lambda 需要一個引數
Consumer<String> stringConsumer =(a) -> System.out.print(a);
以往程式碼如下:
Consumer<String> stringConsumer1 = new Consumer<String>() { @Override public void accept(String ss) { System.out.print(ss); } };
語法格式三:Lambda 只需要一個引數時,引數的小括號可以省略
Consumer<String> stringConsumer =a -> System.out.print(a);
語法格式四:Lambda 需要兩個引數,並且有返回值
BinaryOperator<Long> operators = (a,b) ->{
System.out.println("實現函式介面方法");
return a+b;
};
以往程式碼如下:
BinaryOperator<Long> operator =new BinaryOperator<Long>() { @Override public Long apply(Long a, Long b) { System.out.println("實現函式介面方法"); return a+b; } };