gpt4 book ai didi

java - 在 for 声明中调用 .length() 比在循环之前调用 .length() 慢?

转载 作者:行者123 更新时间:2023-12-02 04:13:19 27 4
gpt4 key购买 nike

在Java代码中,我认为:

for (int i = 0; i < s.length(); i++) {
// do a lot of something
}

比这慢:

int length = s.length();
for (int i = 0; i < length; i++) {
// do a lot of something
}

请告诉我我是否正确。

最佳答案

理论上,第一个代码示例可能会更慢,因为它每次迭代都会调用 s.length() 一次。但 JVM 可能会为您优化第一段代码。使用更简单的方法,除非基准测试表明:

  1. 您正在执行一段对性能至关重要的代码。
  2. 将长度存储在局部变量中实际上确实可以提高速度。

关于java - 在 for 声明中调用 .length() 比在循环之前调用 .length() 慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11487807/

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