Java 代码优化:将复杂的流式操作拆分为多个方法
以下是重构后的代码,主要是将一些复杂的流式操作拆分成了多个方法,提高了可读性和可维护性:
private List<InstanceScoreRecodeEntity> getScoreRecodeList(final ActivityScoreItemVO activityScoreItemVO,
final String activityId) {
List<Map<String, Object>> tableSource = activityScoreItemVO.getScoreItemTable().getTableSource();
if (CollectionUtils.isEmpty(tableSource)) {
return Collections.emptyList();
}
Stream<ScoreItemVO> scoreItemStream = tableSource.stream()
.flatMap(map -> map.getScoreList().stream())
.filter(Objects::nonNull);
return scoreItemStream.map(item -> convertScoreRecode(item, activityId))
.collect(Collectors.toList());
}
private InstanceScoreRecodeEntity convertScoreRecode(ScoreItemVO scoreItemVO, String activityId) {
InstanceScoreRecodeEntity scoreRecodeEntity = new InstanceScoreRecodeEntity();
scoreRecodeEntity.setActivityId(activityId);
scoreRecodeEntity.setScoreItemId(scoreItemVO.getId());
scoreRecodeEntity.setScore(scoreItemVO.getScore());
return scoreRecodeEntity;
}
通过将复杂的流式操作拆分为多个方法,代码变得更加清晰易懂,也更易于维护。每个方法只负责一个特定的功能,代码逻辑更加清晰。此外,这种方法也提高了代码的可重用性,相同的功能可以被不同的方法调用。
原文地址: https://www.cveoy.top/t/topic/oYsC 著作权归作者所有。请勿转载和采集!