替换这样的东西有什么意义
1。普通版
// 1.1
public getUser(){
return user;
}
// 1.2
public void setUser(User user) {
this.user = user;
}
像这样:
2。功能版本
// 2.1
public Supplier<User> getUser = () -> user;
// 2.2
public Consumer<User> setUser = (user) -> this.user = user;
使用版本2有什么技术上的好处(例如性能)?
哪个人更喜欢?
答案 0 :(得分:2)
我真的没有在这里看到功能版本的好处。如果您正在寻找一种传递getter和setter的方法,则可以使用函数引用。例如,假设Entry
包含方法getUser
和setUser
:
Entry entry = ...;
doSomethingWith(entry::getUser);
writeTo(entry::setUser);