2011-11-07 23 views
1

我想将所有数字四舍五入到小数点后1位。DecimalFormat未正确格式化我的号码

例如

22.0 
-6.1 

我使用:

DecimalFormat decimalFormat = new DecimalFormat("0.0"); 
middlePanelTextView.setText(decimalFormat.format(score.getElevationAngle())); 

但整数没有0追加到它。

-18 should be -18.0 etc. 

,而不是我的价值显示为-18.

+2

'middlePanelTextView'是否会削减文本?它是否正确显示-18.5?另外,你可以试试这个:'DecimalFormat decimalFormat = new DecimalFormat(“0.0”,新的DecimalFormatSymbols(Locale.ENGLISH));' – Thomas

+1

'score.getElevationAngle()'方法返回什么值类型? –

+0

'score.getElevationAngle()'返回一个双精度值 –

回答

0

我的TextView被切掉了数字。我的错。缩小字体大小。

-1

尝试使用

DecimalFormat decimalFormat = new DecimalFormat("#.#"); 

的构造函数的参数来代替。

+2

请再读一遍OP,他想得到零,所以#在这里是错误的模式。 – Thomas

-1

尝试使用下面的代码:

DecimalFormat decimalFormat = new DecimalFormat("0.0#"); 
0

尝试

middlePanelTextView.setText(""+decimalFormat.format(score.getElevationAngle()));