2013-02-28 143 views
-1

我有代码:如何将double转换为String?

double total = 36183063.0; 
String val = String.valueOf(total); 

为什么它的到来val="3.6183063E7"

而不是val="36183063"

+0

请参阅http://stackoverflow.com/questions/5287716/j2me-how-to-convert-double-to-字符串没有权力的10代表-E – 2013-02-28 12:31:00

+0

['valueOf'](http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html# valueOf(double))被重载为int和double值(甚至更多!)。 所以你使用'valueOf(double d)'。你应该先把它转换成'int'或者使用'Double.toString(double d)'。 – ConcurrentHashMap 2013-02-28 12:32:34

回答

2

试试这个,

double total = 36183063.0; 
String val = String.valueOf((long)total); 
+0

if double total = 36183063.23; String val = String.valueOf((long)total); val =“36183063”; – mum 2013-02-28 12:43:05

0

试试这个:

Double.toString(val); 
0

试试这个

String str = Double.toString(total); 

OR,

String str = String.valueOf((long)total); 
+0

我使用String str = Double.toString(total); val =“3.6183063E7”。 – mum 2013-02-28 12:41:52

+0

我使用String str = total +“”; val =“36183063.0” – mum 2013-02-28 12:42:16

2

人使用双人类提供的toString(双人间d)方法

像下面,

double total = 36183063.0; 
String val = Double.toString(total); 
+0

我使用String str = Double.toString(total); val =“3.6183063E7” – mum 2013-02-28 12:44:15

相关问题