差异可能微乎其微或不存在,但哪一个更有效,为什么?
int nItems = param.getItemList().size();
for (...) {
if (nitems == 1) doSomething();
}
Run Code Online (Sandbox Code Playgroud)
要么
for (...) {
if (param.getItemList().size() == 1) doSomething();
}
Run Code Online (Sandbox Code Playgroud)
从理论上讲,第一个会更快(你有没有描述它?你应该!),因为它在循环之外拉出一个经常使用的方法调用.但是,如果有足够的时间,JIT编译器可能会优化/内联方法调用,使两个解决方案在性能方面无法区分.
这种微观微观优化不值得努力,更好地瞄准解决方案,使其更清晰,更易于理解.哪个恕我直言恰好是第一个.
| 归档时间: |
|
| 查看次数: |
335 次 |
| 最近记录: |