Java 代码优化:提高代码可读性和效率
代码优化示例:提高代码可读性和效率
以下代码示例展示了对一个 Java 方法进行优化,以提高代码的可读性和效率:
原始代码:
public void setToolConfig(final List<ManageToolConfigVO> toolConfig) {
this.toolConfig = toolConfig;
//设置管理工具启用信息
enableAbstention = getToolEnabledStatus(toolConfig, ManageToolCodeEnum.ABSTENTION_TOOL.getCode());
enableProhibitFullScore = getToolEnabledStatus(toolConfig, ManageToolCodeEnum.PROHIBIT_FULL_SCORE_TOOL.getCode());
enableProhibitSameScore = getToolEnabledStatus(toolConfig, ManageToolCodeEnum.PROHIBIT_SAME_SCORE_TOOL.getCode());
}
/**
* 获取工具启用状态,
*
* @param toolConfigInfoList toolConfigInfoList
* @param toolCode 工具编号
* @return 0:关闭,1:启用
*/
private int getToolEnabledStatus(final List<ManageToolConfigVO> toolConfigInfoList,
final String toolCode) {
return BooleanUtils.toInteger(CollectionUtils.emptyIfNull(toolConfigInfoList)
.stream()
.map(ManageToolConfigVO::getCode)
.collect(Collectors.toSet())
.contains(toolCode));
}
优化后的代码:
public void setToolConfig(final List<ManageToolConfigVO> toolConfig) {
this.toolConfig = toolConfig;
// 设置管理工具启用信息
enableAbstention = getToolEnabledStatus(toolConfig, ManageToolCodeEnum.ABSTENTION_TOOL.getCode());
enableProhibitFullScore = getToolEnabledStatus(toolConfig, ManageToolCodeEnum.PROHIBIT_FULL_SCORE_TOOL.getCode());
enableProhibitSameScore = getToolEnabledStatus(toolConfig, ManageToolCodeEnum.PROHIBIT_SAME_SCORE_TOOL.getCode());
}
/**
* 获取工具启用状态
*
* @param toolConfigInfoList 工具配置信息列表
* @param toolCode 工具编号
* @return 0:关闭, 1:启用
*/
private int getToolEnabledStatus(final List<ManageToolConfigVO> toolConfigInfoList,
final String toolCode) {
return toolConfigInfoList.stream()
.map(ManageToolConfigVO::getCode)
.collect(Collectors.toSet())
.contains(toolCode) ? 1 : 0;
}
优化点说明:
- 删除了不必要的空格和换行,使代码更加紧凑。
- 调整了注释的格式,使注释更清晰易读。
- 使用三元表达式替代了原来的 BooleanUtils.toInteger 方法,使代码更简洁。
通过以上优化,代码变得更易于阅读和理解,同时提高了代码的执行效率。
原文地址: https://www.cveoy.top/t/topic/p8bS 著作权归作者所有。请勿转载和采集!