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


问题内容

我有3个选择:

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

  4. 最短的一个。但是,member + ""将转换为new StringBuilder().append(member).append("").toString(),这似乎并不优雅。

  5. Double.toString(member)我不喜欢,它并没有从字开始member,这是最重要的。我们只需要转换它。最好member是在开头,因为我最注意单词的开头。快速浏览一下,我知道“啊,我要通过会员了”。并与Double.toString(member)我的第一个浓度变为“啊,好吧......一个Double,我们正在做的toString …成员!啊OK”。
  6. member.toString()看起来不错,由于Eclipse中的自动补全功能,它的输入速度甚至比+“”还要快。但是,对象要比基元慢得多。参考。
    最好的选择是什么?也许还有其他选择?

问题答案:

最好的全面方法将适用于任何情况:

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);