java - 使用 int + ""是否不利于将 Java int 转换为字符串?

标签 java string int

所以我们的计算机科学老师教我们如何通过这样做将 int 转换为 String:

int i=0;
String s = i+"";

我猜他是这样教给我们的,因为这是相对基础的计算机科学(高​​中类(class),请注意),但我想知道与以下相比,这是否在某种程度上“不好”:

int i=0;
String s = Integer.toString(i);

成本更高吗?坏习惯?提前致谢。

最佳答案

理论上

说明

String s = i + "";

执行以下操作:通过调用 Integer.toString(i)i 转换为 String,并将此字符串连接到空字符串。这会导致创建三个 String 对象和一个串联对象。

说明

String s = Integer.toString(i);

进行转换,并且只进行转换。

实践

大多数 JIT 编译器都能够将第一条语句优化为第二条语句。如果这种优化甚至在之前完成(由 javac 编译器,在将 Java 源代码编译为字节码时),我不会感到惊讶

关于java - 使用 int + ""是否不利于将 Java int 转换为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7604379/

相关文章:

c++ - fprintf、字符串和 vector

java - 如何设置为int值null? Java 安卓

调用 main 函数方法时发生 Java 引用错误

Java : Debugger is not stopping inside Third Party API class files

java - java中如何简单获取字符串前缀上所有出现的字符?

javascript - JavaScript 函数中的 .split 存在问题,该函数获取字符串中每个单词的最大重复字符数

ios - 如何将 Int 添加到 NSDate 中?

java - 使用 Java 生成所需范围内的随机数

java - Calendar.Month 给出错误的输出

java - 复杂对象的@ModelAttribute