将原语声明和转换为字符串的首选方式

Ada*_*zyk 3 java

我有3个选择:

  1. 声明double member和稍后当我必须通过Stringuse 时member + ""
  2. 声明double member和稍后当我必须通过Stringuse 时Double.toString(member)
  3. 声明Double member = 0.0和稍后当我必须通过Stringuse 时member.toString()

我的意见:

  1. 最短的一个。但是,member + ""将转换为new StringBuilder().append(member).append("").toString(),这似乎不优雅。
  2. Double.toString(member)我不喜欢它不是从单词开始的member,这是最重要的。我们只需要转换它。最好member在开头,因为我最关注单词的开头。快速一瞥,我知道“啊,好吧,我正在通过会员”。并与Double.toString(member)我的第一个浓度变为“啊,好吧......一个Double,我们正在做的toString ...成员!啊OK”。
  3. member.toString()看起来不错,而且可以比 + "" 输入得更快,因为 Eclipse 中有自动完成功能。然而,对象比基元慢得多。参考。

最好的选择是什么?也许还有其他选择?

Boh*_*ian 5

适用于任何事情的最佳全方位方法是:

String s = String.valueOf(x);
Run Code Online (Sandbox Code Playgroud)

这里x可以是一个原语或一个对象,其中(重要的是)可能是null.

编辑:
hackaliciuos 的方式是:

X + "";
Run Code Online (Sandbox Code Playgroud)

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

new StringBuilder().append(x).append("").toString();
Run Code Online (Sandbox Code Playgroud)

并调用.append(x)所调用String.valueOf(x)反正。


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

String s = Arrays.toString(array);
Run Code Online (Sandbox Code Playgroud)