我们经常遇到这样一种情况,我们需要传递一个原始的字符串表示,而更多时候我们不使用
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/