這可能看起來很乏味,但我知道在 JavaScript 中,如果一個對象屬性將被多次使用,則聲明局部變量是優化的最佳實踐。例如:var i, length = array.length;for(i = 0; i < length; i++) { console.log(length);}我很好奇在 Java 中是否會出現相同的情況,例如在這個例子中我使用了values.length兩次。for(int i = 0; i < values.length && length < values.length + i; i++) { vector[i + index] = values[i];}
1 回答

茅侃侃
TA貢獻1842條經驗 獲得超22個贊
我會說這取決于。在您的示例中,它不會改變任何內容。創建局部變量和使用length屬性一樣快。但是使用類中的字段并不常見,我們都使用 getter 代替這個,例如:
// not used
class Person {
public String name;
}
// used
class Person {
private String name;
public String getName() {
return name;
}
}
在這種情況下 usinggetName()也和局部變量一樣快,但它getName()是一種方法,內部可以是任何東西。您可以進行非常復雜的計算(不推薦,但不能禁止)。在這種情況下,局部變量應該更快,因為您只計算一次。
添加回答
舉報
0/150
提交
取消