1 回答

素胚勾勒不出你
TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超9個(gè)贊
->是Java 8新增的Lambda表達(dá)式中,變量和臨時(shí)代碼塊的分隔符,即:
(變量) -> {代碼塊}
如果代碼塊只有一個(gè)表達(dá)式,大括號可以省略。如果變量類型可以自動(dòng)推斷出來,可以不寫變量類型。
::是類似于C++的域運(yùn)算符,獲取方法使用的。
stream()也是JDK8新增的流,你的表達(dá)式中將numbers轉(zhuǎn)換為流,就可以惰性處理,這樣只有變量要用的時(shí)候才會(huì)被調(diào)用,專門處理較多的數(shù)字或者字符串(如配合readAllLines()方法使用),i -> i % 2 == 0就是自動(dòng)判斷了i的類型(可能是int型,我沒法判斷),這樣就將numbers中所有的偶數(shù)過濾出來了(distinct()保證了每個(gè)數(shù)字只保留一個(gè)),然后將這些過濾出的數(shù)字每個(gè)占用一行地打印出來。
添加回答
舉報(bào)
0/150
提交
取消