我在 Android 文档中经常看到以下内容:
int n = getCount();
for (int i = 0; i < n; i ++) {
// do somthing
}
但我习惯了看到和做:
for (int i = 0; i < getCount(); i ++) {
// do somthing
}
我很好奇其中一个是否比另一个更有效率?这两种情况到底发生了什么?当您以第二种方式调用getCount()
时,计算机是否必须分配另一个变量?或者这只是代码整洁度或偏好的问题?
最佳答案
第一个比另一个更有效。
在第一种情况下,您只调用 getCount 一次,而在第二种情况下,您为每个条件检查调用 getCount,这会增加循环的执行时间。
关于java - 哪个 for 循环头性能更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28506401/