我如何在java中Double
连接?String
我有以下代码:
Double price = 5.34;
String trade = MSFT;
现在我有String key = price + trade
,不确定这是否是正确的做法,有什么建议吗?
我如何在java中Double
连接?String
我有以下代码:
Double price = 5.34;
String trade = MSFT;
现在我有String key = price + trade
,不确定这是否是正确的做法,有什么建议吗?
Java 字符串连接默认使用+
符号完成。
但是有时这不是一个好习惯,因为每次执行此操作都会创建一个新的字符串实例,因此如果您处于循环中,这将为每次迭代在内存中创建一个新字符串。
所以对于简单的情况,+
是完全有效的。
对于其他情况,您应该使用StringBuilder。
我可能会使用String.format()并且您将能够控制字符串中双精度的格式。例如,您可以控制前导零、显示的 dps 数量等。
您可以使用String.valueOf(price)
转换。所以你会有
Double price = 5.34;
String trade = MSFT;
String key = String.valueOf(price) + trade;
没有错String key = price + trade
。它比String.valueOf(price) + trade
或使用StringBuilder
.
字符串键 = Double.toString(price) + trade;
格式化字符串 - http://docs.oracle.com/javase/6/docs/api/java/text/DecimalFormat.html
如何使用它的示例。
http://www.tech-recipes.com/rx/1326/java-decimal-format-to-easily-create-custom-output/
要输出它,请使用 + 操作数。如果您正在寻找性能,这将创建另一个字符串。您还可以使用字符串生成器 - http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/StringBuilder.html。
您还可以使用 toString() 转换您的 Double。
Double price = 5.34;
String trade = MSFT;
String key = Double.toString(price) + trade;
以下是 toSting() 方法的详细信息: http://docs.oracle.com/javase/7/docs/api/java/lang/Double.html#toString(double)
但是使用 StringBuffer 更有效。
问候,德克斯。