gpt4 book ai didi

java - 代码长度对性能有影响吗?

转载 作者:行者123 更新时间:2023-11-29 06:53:13 25 4
gpt4 key购买 nike

我使用以下示例来说明示例,但请注意,它可以是任何其他任务。

for (int i =0; i< 1000; i++){     
String a= "world";
Log.d("hello",a);
}

对比

String a="";
a="world";
Log.d("hello",a);

String a="";
a="world";
Log.d("hello",a);

String a="";
a="world";
Log.d("hello",a);

String a="";
a="world";
Log.d("hello",a);

String a="";
a="world";
Log.d("hello",a);
...
//1000 times

让我们忽略可读性和代码质量,只考虑编译程序的性能。那么哪个更好呢?

最佳答案

唯一的答案:这个根本不重要。

我的意思是:可读性和良好的设计等方面更值得您花时间。

当且仅当您设法设计出出色的应用程序时;并且您已经到了遇到性能问题的地步,您将不得不研究这个特定问题;好吧,那么研究它会有好处。但我有 99.9% 的把握:你现在还没有。从这个意义上说:你正在为这些想法浪费时间!

换句话说:尤其是在“JVM 堆栈”中,有无数的东西会对性能产生微妙或不那么微妙的影响。比如:有很多选项会影响垃圾收集的内部工作以及即时编译器正在做什么。与手动展开循环代码相比,这将以更重要的方式影响正在运行的应用程序的“性能”。

郑重声明:许多基准测试实验表明,如果您向 JIT 提供“正常”代码,它确实能发挥最佳作用。意思是:Oracle JIT 旨在为您提供“正常”输入的“最佳结果”。但是,一旦您开始摆弄您的 Java 代码,以便以某种方式创建“优化的”代码……您的更改很可能会使 JIT 做得更好更难

因此:请忘记此类微优化。如果您花同样多的时间学习“良好的 OO 设计”和“通用 Java 性能主题”……您将从中收获更多!

关于java - 代码长度对性能有影响吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40909445/

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