java:默认数字格式

时间:2011-07-07 06:18:32

标签: java

我有一个程序可以使用一些数字输出进行算法计算。我希望这个输出看起来不错,程序仍然很快。我使用了DecumalFormat,但这使它变得如此缓慢,但有效。 有没有办法设置默认数字输出所以我不需要DecimalFormat ???

Locale deLocale = new Locale("de_DE");
// should be format:  ###,###.###    123.456,789     de_DE

Locale.setDefault (deLocale);

double f=-123456.123458998;
System.out.println (""+f+"");  // I wourld expect -123.456,123
// but the output is -123456.123458998

任何想法?谢谢! 克里斯

1 个答案:

答案 0 :(得分:0)

您需要查看Customizing Format

您需要###,###.### - de_DE模式。

String pattern= "###,###.###";
DecimalFormat myFormatter = new DecimalFormat(pattern);
double f=-123456.123458998;
String output = myFormatter.format(f);
System.out.println(f+ " " + pattern + " " + output);

编辑:如果您不想使用自己的模式,请使用Predefined format