我正在使用Java处理Android应用程序,我想知道有关声明新变量的性能。
免责声明:我不是Java方面的专家,因此我不太了解事情在较低层次上是如何运作的。
在以下两段代码中:
for(int i = 0; i < getApplication().getUsers().size(); i++) {
if(getApplication().getUsers().get(i).getId() == id) {
return getApplication().getUsers().get(i);
}
}
int size = getApplication().getUsers().size();
for(int i = 0; i < size; i++) {
User user = getApplication.getUsers().get(i);
if(user.getId() == id) {
return user;
}
}
它们之间会有任何性能差异吗?
我认为第二个更具可读性和干净性,但最终我宣布了更多变量。
我倾向于认为,当我宣布更多变量时,我需要更多内存来存储它们。另一方面,访问深层嵌套对象可能会导致CPU使用率增加(可能?)。这是真的吗?或者至少有道理?
是否有关于声明变量或直接从对象访问变量的最佳实践?
谢谢!