我想将给定值32.1500中的值截断为32并将其显示在textview文本上请帮助我搜索了很多但没有找到任何内容。
答案 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));