我有一个关于 Java 的一般性问题。
什么更好?
案例一:
a = method1(7);
b = method2(a);
c = method3(b);
或
c = method3(method2(method1(7)));
案例二:
String a = method1(1);
String b = method2(2);
String c = method3(3);
String d = a+b+c;
或
String d = method1(1)+method2(2)+method3(3);
我想知道在速度方面什么会更好...... 我想第二种方式(两种方式)在内存占用方面更好,但我一直想知道是不是一种方式比另一种方式更快,或者它们是否需要相同的时间来执行。我正在制作一个多次调用同一函数的程序,因此每一毫秒都很重要!
如果还有其他项目他们可以竞争(除了速度等),也告诉我!
最佳答案
执行速度不会有明显差异。将临时变量用于中间结果的代码之间的唯一区别是您能够在调试器中看到中间值。此外,如果在调用目标函数后未使用中间变量的值,编译器很可能会优化这些变量,生成相同的字节代码。
关于Java速度和内存占用 "contest",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10873334/