Разделение числа на разряды в Java
Есть условная переменная Int. Её нужно изменить так, чтобы оно выдавало не просто число "3434436", а "3,434,436". Уже пробовал через regex. Может я что-то не так делаю.
Ответы (3 шт):
Автор решения: Maxim
→ Ссылка
https://docs.oracle.com/javase/tutorial/java/data/numberformat.html
int value = 3434436;
String str = String.format(Locale.US, "%,d", value);
, Запятая - это разделитель групп. В зависимости от указанной локализации может оказаться вообще не запятой.
Автор решения: fox
→ Ссылка
ну или так)
public class test {
public static void main(String[] args) {
int number = 3434436;
System.out.printf(Locale.US, "%,d", number);
}
}
Автор решения: Barmaley
→ Ссылка
int myInt = 3434436;
//дефолтный форматтер для текущей локали
DecimalFormat formatter = (DecimalFormat) NumberFormat.getInstance();
DecimalFormatSymbols symbols = formatter.getDecimalFormatSymbols();
symbols.setGroupingSeparator('\''); //разделитель тысяч '
formatter.setDecimalFormatSymbols(symbols);
System.out.println(formatter.format(myInt));