public
static
void
main
(string[
] args)
system.out.
println
("初始化後的集合:");
system.out.
println
(heros)
; system.out.
println
("使用lambda的方式:篩選出 hp>100 && damage<50 的英雄 ");
// filter(heros, hero -> hero.getflohp() > 100 && hero.getintdamage() < 50);
// 呼叫靜態方法,兩種寫法
// filter(heros, hero -> testhero(hero));
// filter(heros, testlambda::testhero);
// 呼叫物件方法
testlambda testlambda =
newtestlambda()
;filter
(heros, testlambda:
:testhero)
;// 引用構造器
}// 使用匿名內部類的方式
private
static
void
filter
(list
heros, herocheck herocheck)}}
private
boolean
testhero
(hero hero)
public
static
void
main
(string[
] args)};
// 匿名類
list list1 =
getlist
(s);
//lambda表示式
list list2 =
getlist((
)->
newarraylist()
);//引用構造器
list list3 =
getlist
(arraylist:
:new);
}public
static list getlist
(supplier
s)
Lambda(五) 方法引用
方法引用 方法引用就是讓我們根據已有的方法建立lambda表示式,假如乙個lambda表示式只是單純的呼叫一下這個方法,那麼我們就可以省去描述的步驟,直接用名稱進行呼叫。語法 目標引用 方法名稱其中 是分隔符 等效方法引用不需要加上括號,因為並沒有實際呼叫這個方法。主要的三類方法引用 1.指向靜態方...
Lambda表示式之方法引用
方法引用可以被看做僅僅呼叫特定方法的lambda的一種快捷寫法。它的基本思想是,如果乙個lambda代表的只是 直接呼叫這個方法 那最好還是用名稱來呼叫它,而不是去描述如何呼叫它。事實上,方法引用就是讓你根據已有的方法實現來建立lambda表示式。但是,顯式地指明方法的名稱,你的 可讀性會更好。方法...
三十 Lambda表示式 方法引用
實現方式二 實現方式三 演示 方式一的執行緒類 public class myrunnable implements runnable public class lambdademo start 方式三 newthread start 函式式程式設計思想概述 函式式思想則盡量忽略物件導向的複雜語法 ...