JDK8新特性之方法引用

2022-09-07 15:39:20 字數 1533 閱讀 5050

方法引用是只需要使用方法的名字,而具體呼叫交給函式式介面,需要和lambda表示式配合使用。

如:

list

list = arrays.aslist("a","b","c");

list.foreach(str -> system.out.print(str));

list.foreach(system.out::print);

上面兩種寫法是等價的。

格式:class::new,呼叫預設構造器。

格式:class::static_method

格式:class::method,方法不能帶引數。

格式:instance::method

往user類新增方法引用方法:

public

static user create(suppliersupplier)

public

static

void

updateusername(user user)

public

void

updateage()

public

void

changeage(user user)

方法引用測試:

public

static void main(string args)

private

static

list

initlist()

輸出結果:

user

[username=new, age=1]

user

[username=oaby updated., age=43]

user

[username=tom updated., age=31]

user

[username=john updated., age=36]

user

[username=jennis updated., age=46]

user

[username=tin updated., age=46]

user

[username=army updated., age=46]

user

[username=mack updated., age=39]

user

[username=jobs updated., age=85]

user

[username=jordan updated., age=43]

可以看出方法引用都生效了,username和age都相應更新了。

推薦閱讀

面經:史上最全j**a多執行緒面試題及答案

面經:史上最全阿里高階j**a面試題

面經:史上最全spring面試題

書籍:高階j**a架構師必看的15本書

JDK8新特性之方法引用

方法引用是只需要使用方法的名字,而具體呼叫交給函式式介面,需要和lambda表示式配合使用。如 listlist arrays.aslist a b c list.foreach str system.out.print str list.foreach system.out print 上面兩種寫...

JDK8新特性 方法構造方法的引用

一 建立實體類物件 public class person public person string firstname,string lastname override public string tostring public string getfirstname public void se...

Jdk8新特性之排序

comparator提供的方法 author wgr create 2020 4 13 16 12 public class person public string getname public void setname string name public integer getage publ...