【发布时间】:2022-01-22 09:59:41
【问题描述】:
我有这门课:
public class User {
private String name;
private int age;
//getters setters
}
我有一个更新用户对象的方法:
public void foo(User user) {
boolean needUpdate = false;
if(needUpdateName(user.getName())) {
user.setName("new name");
needUpdate = true;
}
if(needUpdateAge(user.getAge())) {
user.setAge(42);
needUpdate = true;
}
if(needUpdate) {
userRepository.update(user);
}
}
这是一个简单的例子,仅作为示例。如何重构此代码并删除 needUpdate 变量?
【问题讨论】:
-
您可以列出“更新者”(每个都返回他们是否做了某事)并将其缩减为
boolean
标签: java methods refactoring