Rud*_*ira 0 lambda functional-programming if-statement optional java-8
如何使用Optional和lambda编写下面的逻辑? 我有两个列表
List success = new ArrayList <>();
List failures = new ArrayList <>();
并且有一个对象
RoomTypes值
对于这value.getErrorType()可能是空或不和value.getId()回报整数.
我想更新success,并failure与value.getId()根据列表value.getErrorType()为空.
就像是:
if(value.getErrorType().equals(NULL)){
success.add(value.getId())
}
else{
failure.add(value.getId())
}
Run Code Online (Sandbox Code Playgroud)
假设,NULL实际意味着null,你可以使用
Optional.ofNullable(value.getErrorType())
.map(x -> failure).orElse(success).add(value.getId());
Run Code Online (Sandbox Code Playgroud)
虽然不建议Optional用于这种情况,因为类似的普通支票是直截了当的:
(value.getErrorType() == null? success: failure).add(value.getId());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1191 次 |
| 最近记录: |