public class TestFormat {
public static void main(String[] args) {
NumberFormat c = NumberFormat.getCurrencyInstance(Locale.CHINA);
Double d = -223423434d;
System.out.println(c.format(d));

}
}最后的结果为:-¥223,423,434.00怎么样才能得到:¥-223,423,434.00 这种格式的呢?

解决方案 »

  1.   

    String currencySymbol = Currency.getInstance(Locale.CHINA).getSymbol();
    NumberFormat c = NumberFormat.getInstance(Locale.CHINA);
            Double d = -223423434d;
            System.out.println(currencySymbol + c.format(d));
      

  2.   

    这里有个问题就是原来比如说是Double d = -2d;显示出来就是2.00,是Double d = -2.1d;显示出来就是2.10,
    而新的是整数就不保留小数位。有几位小数它就保留几位,没有统一格式。不知道如何修改?
      

  3.   

    String currencySymbol = Currency.getInstance(Locale.CHINA).getSymbol();
    DecimalFormat c = new DecimalFormat("###,###,###,###,###.00");
            Double d = -223423434d;
            System.out.println(currencySymbol + c.format(d));
      

  4.   

    NumberFormat nFormat = NumberFormat.getInstance(Locale.CHINA);
    Double d = -223423434.233d;
    String symbol = Currency.getInstance(Locale.CHINA).getSymbol(Locale.CHINA);
    System.out.println(symbol + nFormat.format(d));