gpt4 book ai didi

java - 点后显示最多 X 位数字

转载 作者:行者123 更新时间:2023-12-01 11:09:50 26 4
gpt4 key购买 nike

我只想在点后显示 7 位数字,如果该数字包含的数字少于 7 位,我会遇到问题,由于某种原因,它会用额外的数字填充。

我尝试使用 DecimalFormat("##.#######").format(float value)String.format("%.07f", float value )

以下是示例:

  • 4.275 显示为 4.275001
  • 1 使用 String.format 表示为 1.0000000(使用 DecimalFormat 表示为 1.0000000)。

如何在点后显示最多 X 位数字,而不填充数字?

编辑

这里是代码示例:

TextView tvDec = (TextView) findViewById(R.id.tvDecimal);
TextView tvStringFormat = (TextView) findViewById(R.id.tvStringFormat);
float num = 4.275f;
String finalNum = new DecimalFormat("##.#######").format(Float.valueOf(num));
tvDec.setText(finalNum);
finalNum = String.format("%.07f", Float.valueOf(num));
tvStringFormat.setText(finalNum);

结果如下:

enter image description here

最佳答案

因为数字 4.275 不能表示为 float ,所以 4.275f 确实代表数字 4.275000095367431640625。

this answer解释了您应该使用的内容:

float val = 4.275f;
System.out.println(new BigDecimal(val).setScale(7, RoundingMode.DOWN).stripTrailingZeros().toString());

关于java - 点后显示最多 X 位数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32500328/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com