【发布时间】:2016-01-21 22:33:05
【问题描述】:
我想知道有没有办法简化下面的代码?我正在尝试使用 EBean 从数据库中获取一些东西。如果有东西,则将其映射到一个对象或以其他方式返回默认实现实例。
public static ObjectA test1() {
Function<Optional<SqlRow>, ObjectA> sqlRowToObjectA= new Function<Optional<SqlRow>, ObjectA>() {
@Override
public AccountSummary apply(Optional<SqlRow> entry) {
return entry.isPresent() ? new ObjectA(entry.get().getInt("id"), entry.get().getString("name"))
: ObjectA.EMPTY;
}
};
return sqlRowToObjectA.apply(Optional.of(Ebean.createSqlQuery("select * from table1").findUnique()));
}
【问题讨论】:
-
我认为您可以将条目映射到新创建的对象中,或者返回一个空元素。
-
@MiserableVariable 更容易理解并且可以像链接时尚一样完成?
-
定义更容易理解
标签: java lambda functional-programming java-8 optional