在android中小数点后截断值

时间:2014-08-28 09:43:20

标签: android

我想将给定值32.1500中的值截断为32并将其显示在textview文本上请帮助我搜索了很多但没有找到任何内容。

3 个答案:

答案 0 :(得分:3)

如果您不想投射它,可以将其保持为双倍但截断这样的尾随零:

textView.setText(String.format("%.0f", 5.222));

答案 1 :(得分:0)

尝试这样的事情:

private final DecimalFormat decimalFormat = new DecimalFormat("#.####");
private final DecimalFormat noDecimalFormat = new DecimalFormat("#");

String decimalValue = decimalFormat.format(value);
String noDecimalValue = noDecimalFormat.format(value);

或者使用NumberFormat而不是DecimalFormat:

 private NumberFormat formatter;
 // Set the properties for the number format that will display the values
 formatter = NumberFormat.getNumberInstance();
 formatter.setMinimumFractionDigits(4);
 formatter.setMaximumFractionDigits(4);

 String decimalValue = formatter.format(value);

 formatter.setMinimumFractionDigits(0);
 formatter.setMaximumFractionDigits(0);

 String noDecimalValue = formatter.format(value);

您可以像这样设置所需的舍入模式:

noDecimalFormat.setRoundingMode(RoundingMode.DOWN)
formatter.setRoundingMode(RoundingMode.DOWN)

答案 2 :(得分:0)

尝试使用这样的演员。

double number=32.1500;
int numbereditted=(int) number;
textView.setText("Number= "+numbereditted);

或使用小数格式。

double number=32.1500;
DecimalFormat df=new DecimalFormat("0");
textView.setText("Number= "+df.format(number));