The*_*ter 6 java refactoring android android-studio
我收到许多方法的警告local variable is redundant.
这是一个示例方法:
public MyObject getMSListItem(int pos) {
MyObject li = getItem(pos);
return li;
}
Run Code Online (Sandbox Code Playgroud)
现在看来,我想,我可以做到这一点来解决它:
public MyObject getMSListItem(int pos) {
return getItem(pos);
}
Run Code Online (Sandbox Code Playgroud)
另一个例子:
public String getTeacher(int pos) {
ffTeacherListItem t = getItem(pos);
String teacher = t.teacher;
return teacher;
}
Run Code Online (Sandbox Code Playgroud)
似乎这可能是:
public String getTeacher(int pos) {
ffTeacherListItem t = getItem(pos);
return t.teacher;
}
Run Code Online (Sandbox Code Playgroud)
或者按照下面的建议,甚至更好!
public String getTeacher(int pos) {
return getItem(pos).teacher;
}
Run Code Online (Sandbox Code Playgroud)
这真的是一个"最佳实践"吗?有一种方式比另一种更好吗?或者只是代码可读性而已?
这真的是一个"最佳实践"吗?有一种方式比另一种更好吗?或者只是代码可读性而已?
Simplified说:在你的场景中它没用.这不是不正确但为什么你会这样做:
ffTeacherListItem t = getItem(pos);
String teacher = t.teacher;
return teacher;
Run Code Online (Sandbox Code Playgroud)
当你可以做同样的事情:
ffTeacherListItem t = getItem(pos);
return t.teacher;
Run Code Online (Sandbox Code Playgroud)
或者你也可以这样做:
return getItem(pos).teacher;
Run Code Online (Sandbox Code Playgroud)
以上所有都是相同的,但第二和第三个代码更清晰,你应该总是尝试编写干净的代码,没有无用的行和引用1.还有不成文的规则 - 更少的代码,更少的错误.
1 这是C++等语言的"优势",它没有垃圾收集器,你负责所有你创建的对象和实例(它们从内存中释放等).因此,在决定创建某个Object的新实例之前,您会考虑更多.
| 归档时间: |
|
| 查看次数: |
13302 次 |
| 最近记录: |