我正在使用 Eclipse Neon我在过大的方法中有一个重复的方法调用: myObj.getStatus()例如if (myObj.getStatus() == ONE || myObj.getStatus() == TWO ) {}myObj.changeMe();if (myObj.getStatus() == THREE || myObj.getStatus() == FOUR) {}myObj.changeMe2();...状态可以在调用之间在内部更新我只有2个选择提取局部变量并检查仅在范围(方法)中替换所有出现的情况,这不好(因为getStatus()不是有效的最终结果)提取局部变量并手动替换每个相关myObj.getStatus()调用我终于提取了一个方法,然后提取局部变量并检查替换所有出现这是最有效的选择吗?或者我可以只在 eclipse 中的特定上下文/选定文本中替换吗?如果不是,这可以被认为是对 Eclipse 重构的增强吗?编辑我希望重构到最近的类似于 JavaScript 的封闭块 let实际上代码不在同一级别,但 eclipse 替换了方法中的所有出现if (myState.equals(STATE_ONE){ if (myObj.getStatus() == ONE || myObj.getStatus() == TWO ) { } myObj.changeMe();}if (myObj.getStatus() == THREE || myObj.getStatus() == FOUR) {}myObj.changeMe2();...
1 回答
慕桂英3389331
TA贡献2036条经验 获得超8个赞
还有第三种选择:
确保选中“用对局部变量的引用替换所有出现的选定表达式”复选框
单击预览 >
取消选中的复选框,其中表达不应该被更换(在你的情况下,最后两个)
添加回答
举报
0/150
提交
取消