java - Long.toString(i) 与 i + ""之间的区别

标签 java string

我们经常遇到这样一种情况,我们需要传递一个原始的字符串表示,而更多时候我们不使用

  WrapperClass.toString() ;

有时我们通常写

  i + "";

如果我们检查任何包装类的 toString 实现,它会在我们每次调用它时创建一个新的 String 对象。原语 + ""也是如此(因为运行时的串联将创建新的字符串对象)

那么它们之间有什么区别,或者它们只是将原始类型转换为 String 对象的另一种方法;

最佳答案

个人喜欢String.valueOf(i) :

  • 您可以将它用于所有类型(甚至是非原始类型)
  • 它是 null 安全的(假设您在转换 null 值时对字符串值“null”感到满意)
  • 它比 ""+ i 更能表达您的意图 - 该代码表示​​字符串连接,这根本不是您想要的。

关于java - Long.toString(i) 与 i + ""之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7721628/

相关文章:

java - 使用字符串查找 Java 非字符串键控 Java HashMap

javascript - 计算单个字母在单词中出现的次数

java - 如何动态地将元素添加到字符串数组?

php - 反引号 MySQL 实体

java - 如何从 JUnit 测试中的模拟对象获取 typeName()?

Tomcat 8 根路径上的 Java Web Maven 项目。如何?

c - 使用c语言分割字符串

Python 正则表达式匹配段落

java - 如果没有默认程序使用 Runtime.getRuntime().exec ("filename ") 启动 .pdf 文件,如何处理?

java - Libgdx 无法绘制 Sprite