2017-01-09 77 views
0

我想將使用DecimalFormat的浮點格式設置爲給定的精度。我有什麼是這個DecimalFormat精度無法正常工作

val formatter = DecimalFormat(if (precision > 0) "#0.${"0".repeat(precision)}" else "#") 

比方說,精度爲2,當我做

formatter.format(20.0f).toFloat() 

我得到的輸出作爲20.0f,而不是​​3210

回答

2

你轉換StringFloat,從而丟失了String所在的格式。

相反,只需打印o中安輸出format

println(formatter.format(20.0f)) 

如果你想額外的 'F',把它放在你的模式:

val pattern = if (precision > 0) { 
    "#0.${"0".repeat(precision)}f" 
} else { 
    "#f" 
} 
+0

由於它的工作... – Sagar