1 /工作代码:
public Student process (int id, name){
Optional<Student> studentOpt = myrepo.findById(id);
studentOpt.isPresent() {
return updateStudent(id, name);
} else {
return createStudent(id, name);
}
2 /我尝试将其更改为“完整的lambdas代码”(不起作用):
public Student process (int id, name){
Optional<Student> studentOpt = myrepo.findById(id);
return studentOpt.ifPresentOrElse(student-> return updateStudent(id, name), () -> return createStudent(id, name));
}
1 /我应该将其更改为完全lambda吗?什么是最干净的?
2 /如果是,怎么办?
答案 0 :(得分:1)
怎么样,
return studentOpt
.map(ignored -> updateStudent(id, name))
.orElseGet(() -> createStudent(id, name));