java8中引入一個新的操作符“->”,該操作符稱為箭頭操作符或Lambda操作符。
操作符將Lambda表達(dá)式拆分為左右兩部分:
左側(cè):Lambda表達(dá)式的參數(shù)列表
右側(cè):Lambda表達(dá)式中所需執(zhí)行的功能,稱為Lambda體
() -> System.out.println("Hello e路縱橫開發(fā)團(tuán)隊");
@Test
public void test1(){
int num = 0;
//匿名內(nèi)部類
Runnable r = new Runnable() {
@Override
public void run() {
System.out.println("Hello World!" + num);//在匿名內(nèi)部類中應(yīng)用了同級別的變量時,在jdk1.7以前,變量必須申明為final,在jdk1.8中,默認(rèn)加上final
}
};
r.run();
System.out.println("---------------------------------------");
//Lambda表達(dá)式
Runnable r1 = () -> System.out.println("Hello e路縱橫開發(fā)團(tuán)隊" + num);
r1.run();
}
(x) -> System.out.prinrln(x);
@Test
public void test2(){
Consumer consumer = (x) -> System.out.println(x);
consumer.accept("e路縱橫");
}
x -> System.out.println(x);
@Test
public void test3(){
Consumer consumer = x -> System.out.println(x);
consumer.accept("e路縱橫");
}
Comparator
System.out.println("函數(shù)式接口");
return Integer.compare(x, y);
}
@Test
public void test4(){
Comparator comparator = (x, y) -> {
System.out.println("函數(shù)式接口");
return Integer.compare(x, y);
};
}
Comparator
@Test
public void test5(){
Comparator comparator = (x, y) -> Integer.compare(x, y);
}
(Integer x, Integer y) -> Integer.compare(x, y); 其中Integer可以省略不寫
函數(shù)式接口:接口中只有一個抽象方法的接口,稱為函數(shù)式接口??梢允褂米⒔釦FunctionInterface修飾,可以檢查接口是否是函數(shù)式接口
@FunctionalInterface
public interface MyFun {
public Integer getValue(Integer num);
}
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。