在 Java 中,一个 int 可以转换为一个 String in to 方式
String number = Integer.toString(6);
或者
String number = 6 + "";
或者
String number = String.valueOf(6);
两个使用一个函数,一个是串联,但都达到相同的目标,哪个更好用?哪个更有效?还是它们最终都集中到一个功能上?还是编译器最终只是将它们换成相同的功能?
在 Java 中,一个 int 可以转换为一个 String in to 方式
String number = Integer.toString(6);
或者
String number = 6 + "";
或者
String number = String.valueOf(6);
两个使用一个函数,一个是串联,但都达到相同的目标,哪个更好用?哪个更有效?还是它们最终都集中到一个功能上?还是编译器最终只是将它们换成相同的功能?
String.valueOf
调用Integer.toString
: http: //www.mavenjava.com/sun/jdk/1.6.0/src/java/lang/String.java.html#String.valueOf%28int%29
public static String valueOf(int i) {
return Integer.toString(i, 10);
}
String number = 6 + "";
使用 StringBuilder 并附加:
字符串连接是通过 StringBuilder(或 StringBuffer)类及其 append 方法实现的。
(这本质上比其他两种方式慢)。最好的办法是直接使用Integer.toString
您应该尽可能避免字符串连接,尤其是在循环中。也就是说,很多时候使用""+6
. String.valueOf(6)
可能是最好的选择。引擎盖下的连接变成了StringBuilder
. ,所以那里的开销比使用String.valueOf(6)
. Integer.toString(6)
只是奇怪的海事组织。此外,如果它是文字,您应该只使用"6"
.