gpt4 book ai didi

java - 性能提示问题

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:56:47 26 4
gpt4 key购买 nike

public void zero() {
int sum = 0;
for (int i = 0; i < mArray.length; ++i) {
sum += mArray[i].mSplat;
}
}

public void one() {
int sum = 0;
Foo[] localArray = mArray;
int len = localArray.length;

for (int i = 0; i < len; ++i) {
sum += localArray[i].mSplat;
}
}

根据 Android documentation ,在上面的代码中,零速度较慢。但我不明白为什么?好吧,我还没有学到那么深,但据我所知,length 是一个字段而不是方法。那么当循环检索它的值时,它与从局部变量中检索有何不同?并且数组长度在初始化后始终是固定的。我错过了什么?

最佳答案

嗯,我想这是因为在时,他总是需要从mArray中检索信息,而在时,他可以访问它.这意味着,zero 需要两个“方法”:

  1. 访问 mArray
  2. 获取mArray.length

但是一个只需要一个“方法”:

  1. 访问len

关于java - 性能提示问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18206197/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com