for (StudentAuditInfo stu : studentAuditInfos) { if (stu.getExamineStatus().equals("05")) { Integer nowNum = entityAuditRecordMapper.selectNowNum(stu.getApplyId()); if (stu.getAuditNum() == nowNum) { stu.setExamineStatus("01"); } else { stu.setExamineStatus("03"); } } }转成stream表达式
时间: 2024-01-16 10:02:29 浏览: 122
stu-class.rar_be a stu_beautiful_https://stuclass_https://stucla
可以使用如下的 Java 8 Stream 表达式来代替上述的 foreach 循环:
```
studentAuditInfos.stream()
.filter(stu -> stu.getExamineStatus().equals("05"))
.forEach(stu -> {
Integer nowNum = entityAuditRecordMapper.selectNowNum(stu.getApplyId());
if (stu.getAuditNum() == nowNum) {
stu.setExamineStatus("01");
} else {
stu.setExamineStatus("03");
}
});
```
这个表达式首先将 `studentAuditInfos` 转换成一个 Stream,然后使用 `filter` 方法保留 `examineStatus` 属性为 "05" 的对象。接着,使用 `forEach` 方法遍历这些对象,在每个对象上执行相应的操作。注意,在 Stream 中对对象进行修改会直接影响原始的对象列表。
阅读全文