5 ответов:
String.format("%4.3f" , x) ;это означает , что нам нужно всего 4 цифры в ans, из которых 3 должны быть после запятой . И f-это спецификатор формата double . x означает переменную, для которой мы хотим ее найти . Работал на меня . . .
Если вы хотите отформатировать его вручную символы, используйте этот:
DecimalFormatSymbols decimalFormatSymbols = new DecimalFormatSymbols(); decimalFormatSymbols.setDecimalSeparator('.'); decimalFormatSymbols.setGroupingSeparator(','); DecimalFormat decimalFormat = new DecimalFormat("#,##0.00", decimalFormatSymbols); System.out.println(decimalFormat.format(1237516.2548)); //1,237,516.25форматирование на основе локали является предпочтительным, хотя.
код, извлеченный из этой ссылке;
Double amount = new Double(345987.246); NumberFormat numberFormatter; String amountOut; numberFormatter = NumberFormat.getNumberInstance(currentLocale); amountOut = numberFormatter.format(amount); System.out.println(amountOut + " " + currentLocale.toString());вывод из этого примера показывает, как формат одного и того же числа зависит от локали:
345 987,246 fr_FR 345.987,246 de_DE 345,987.246 en_US
public class MainClass { public static void main(String args[]) { System.out.printf("%d %(d %+d %05d\n", 3, -3, 3, 3); System.out.printf("Default floating-point format: %f\n", 1234567.123); System.out.printf("Floating-point with commas: %,f\n", 1234567.123); System.out.printf("Negative floating-point default: %,f\n", -1234567.123); System.out.printf("Negative floating-point option: %,(f\n", -1234567.123); System.out.printf("Line-up positive and negative values:\n"); System.out.printf("% ,.2f\n% ,.2f\n", 1234567.123, -1234567.123); } }и распечатать:
3 (3) +3 00003
Формат с плавающей запятой по умолчанию: 1234567,123000
С плавающей запятой: 1.234.567, 123000
Отрицательная плавающая точка по умолчанию: -1.234.567,123000
Отрицательный вариант с плавающей запятой: (1.234.567,123000)линейка положительных и отрицательных значений:
1.234.567,12
-1.234.567,12
Comments