在java中,小数点后只有两位数字,没有最后两位四舍五入



在java中,我尝试只在小数点后2位,而不进行最后2位的舍入。这是我的代码:-

val df = DecimalFormat("#.##")
val gh = df.format(19.14966566)

df的ans=19.15

但我只想要19.14,因为它是19.14966566的最后2位,没有四舍五入

您可以使用以下代码

double x = 19.14966566;
double y = Math.floor(x * 100) / 100;
O/P-> 19.14

在你的代码风格

val df = 19.14966566
val gh = Math.floor(x * 100) / 100
gh-> 19.14

您也可以参考此链接:https://stackoverflow.com/a/32303271/6838146

如果你遇到任何问题,请告诉我

你可以试试这个。。。它对我有效…

val df = DecimalFormat("#.##")
df.roundingMode = RoundingMode.FLOOR
val gh = df.format(19.14966566)

NumberFormat为您提供了另一个解决方案
使用NumberFormat,您可以显式设置:

  • 本地语言
  • 小数位数的最小值
  • 小数位数的最大值
  • 舍入模式

像这样:

val nf = NumberFormat.getInstance(Locale.US)
nf.minimumFractionDigits = 2
nf.maximumFractionDigits = 2
nf.roundingMode = RoundingMode.DOWN
val gh = nf.format(19.14966566)
println(gh)

将打印:

19.14

相关内容

  • 没有找到相关文章

最新更新