Формат float для отображения десятичных знаков, если не ноль java [duplicate]

2

Мне нужно показать десятичные знаки значения float только тогда, когда оно отличается от нулей.

  1. 5,0 следует указывать как 5.
  2. 7.3 следует показать как 7.3.
  3. 9.000003 следует указать как 9.000003.

Как форматировать таким образом, используя регулярное выражение или DecimalFormat?

  • 0
    проверить это
Теги:
floating-point
decimalformat

1 ответ

3
Лучший ответ

Чтобы отобразить десятичные знаки так, как вы хотите, используйте следующий фрагмент:

// This is to show symbol . instead of ,
DecimalFormatSymbols otherSymbols = new DecimalFormatSymbols(Locale.US);
// Define the maximum number of decimals (number of symbols #)
DecimalFormat df = new DecimalFormat("#.##########", otherSymbols);

// type: double
System.out.println(df.format(5.0)); // writes 5
System.out.println(df.format(7.3)); // writes 7.3
System.out.println(df.format(9.000003)); // writes 9.000003

// type: float
System.out.println(df.format(9.000003f)); // writes 9.000002861
  • 0
    оно работает! Thaks!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню