Только 2 цифры после десятичной точки без округления последних 2 цифр в Java - PullRequest
0 голосов
/ 30 ноября 2018

я стараюсь только 2 цифры после десятичной точки без округления последних 2 цифр в Java.Вот мой код: -

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

ans of df is = 19.15

но я хочу только 19.14, так как это последние 2 цифры 19.14966566 без округления

Ответы [ 3 ]

0 голосов
/ 30 ноября 2018

Вы можете попробовать это ... Это работает для меня ...

val df = DecimalFormat("#.##")
df.roundingMode = RoundingMode.FLOOR
val gh = df.format(19.14966566)
0 голосов
/ 30 ноября 2018

Еще одно решение для вас с 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
0 голосов
/ 30 ноября 2018

Вы можете использовать ниже код

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

Дайте мне знать, еслиВы столкнулись с любой проблемой

...