声明原语并将其转换为字符串的首选方法

时间:2013-02-23 22:54:45

标签: java

我有3个选项:

  1. 当我必须通过double member使用String时,声明member + ""以及之后。
  2. 当我必须通过double member使用String时,声明Double.toString(member)以及之后。
  3. 当我必须通过Double member = 0.0使用String时,声明member.toString()以及之后。
  4. 我的意见:

    1. 最短的一个。但是,member + ""将转换为new StringBuilder().append(member).append("").toString(),这似乎并不优雅。
    2. Double.toString(member)我不喜欢它不是从member开始,这是最重要的。我们只需要转换它。如果member在开头就更好了,因为我最关注单词的开头。快速浏览,我知道“啊,好吧,我正在通过会员”。并且Double.toString(member)我的第一个注意力集中在“啊,好吧......一个双人,我们正在做一个成员的串......好吧”。
    3. member.toString()看起来很好,因为Eclipse中的自动完成功能,它的输入速度可以比+“”更快。但是,对象比原始对象要慢得多。 Reference.
    4. 什么是最佳选择?也许还有其他一些选择?

1 个答案:

答案 0 :(得分:4)

最好的全方位方法是:

String s = String.valueOf(x);

此处x可以是基元或对象,(重要的)可能是null

编辑:
hackaliciuos方式是:

X + "";

虽然注意这不是很有效,因为它编译为:

new StringBuilder().append(x).append("").toString();

无论如何,对.append(x)的调用会调用String.valueOf(x)


请注意,数组需要特殊处理:

String s = Arrays.toString(array);