当前位置: 代码迷 >> J2EE >> 求教一个运行效率有关问题
  详细解决方案

求教一个运行效率有关问题

热度:242   发布时间:2016-04-17 23:53:20.0
求教一个运行效率问题
Integer x=500;
1.String str=""+500;
2.String str=String.ValueOf(x)

1和2 哪个效率高?

另外,问一个从1累加到n的操作。最高效的方法是什么?

多谢多谢
------解决方案--------------------
2 效率高。

至于累加,难道不该用等差数列的计算公式吗??
(1 + n)× n / 2
如果n很大会导致越界,考虑BigInteger
------解决方案--------------------
对不起,纠正一下。
1 快。
如果""+500两边都是常量,会被直接编译成“500”这个静态的字符串。
但是,如果加号两边任何一个是动态值(比如函数调用)的话,那么使用+拼接,会导致StringBuilder的隐式参与
最终执行的代码是
String str = new StringBuilder(左边).append(右边).toString();
  相关解决方案