Мне нужно отформатировать число со шкалой из 2 знаков после запятой. Исходное число может быть целым числом или числом с тремя десятичными знаками. Однако результат должен быть отформатирован так, чтобы всегда были запятые, а также два десятичных разряда, независимо от того, является ли исходное число целым числом или имеет десятичные разряды.
- Когда исходное число = 56565656,342 ==> мне нужно 56 565 656,34
- Когда исходное число = 56565656 ==> мне нужно 56 565 656,00
- Когда исходное число = 56565656,7 ==> мне нужно 56 565 656,70
Я использую следующий код, который форматирует код, но не может добавить два десятичных знака в приведенных выше случаях 2 и 3.
String originalNumber = "56565656.7";
BigDecimal b = new BigDecimal(originalNumber).setScale(2, BigDecimal.ROUND_HALF_UP);
String formattedNumber = NumberFormat.getInstance().format(b);
Пожалуйста, дайте мне знать, есть ли способ сделать это эффективным способом.
Заранее спасибо.