在實際工作中,常常需要設定數字的輸出格式,如以百分比的形式輸出,或者設定小數位數等,先稍微總結如下。
          主要使用的類:java.text.DecimalFormat
          1。實例化對象,可以用如下兩種方法:
          DecimalFormat df=(DecimalFormat)NumberFormat.getInstance();
          DecimalFormat df1=(DecimalFormat) DecimalFormat.getInstance();
          因為DecimalFormat繼承自NumberFormat。
          2。設定小數位數
          系統默認小數位數為3,如:
          ??DecimalFormat df=(DecimalFormat)NumberFormat.getInstance();
          ??System.out.println(df.format(12.3456789));
          輸出:12.346
          現在可以通過如下方法把小數為設為兩位:
          ? df.setMaximumFractionDigits(2);
          ??System.out.println(df.format(12.3456789));
          則輸出為:12.35
          3。將數字轉化為百分比輸出,有如下兩種方法:
          (1)
          ? df.applyPattern("##.##%");
          ??System.out.println(df.format(12.3456789));
          ??System.out.println(df.format(1));
          ??System.out.println(df.format(0.015));
          輸出分別為:1234.57%? 100%??? 1.5%
          (2)
          ? df.setMaximumFractionDigits(2);
          ??System.out.println(df.format(12.3456789*100)+"%");
          ??System.out.println(df.format(1*100)+"%");
          ??System.out.println(df.format(0.015*100)+"%");
          輸出分別為:
          1,234.57%?? 100%?? 1.5%
          4。設置分組大小
          ?? DecimalFormat df1=(DecimalFormat) DecimalFormat.getInstance();
          ??df1.setGroupingSize(2);
          ??System.out.println(df1.format(123456789));
          輸出:1,23,45,67,89
          還可以通過df1.setGroupingUsed(false);來禁用分組設置,如:
          ?? DecimalFormat df1=(DecimalFormat) DecimalFormat.getInstance();
          ??df1.setGroupingSize(2);
          ??df1.setGroupingUsed(false);
          ??System.out.println(df1.format(123456789));
          輸出:123456789
          5。設置小數為必須為2位
          ? DecimalFormat df2=(DecimalFormat) DecimalFormat.getInstance();
          ??df2.applyPattern("0.00");
          ??System.out.println(df2.format(1.2));
          輸出:1.20

          posted on 2006-09-19 22:29 揚州夢 閱讀(189) 評論(1)  編輯  收藏 所屬分類: java
          評論
          • # re: 格式化輸出數字
            祎恬凡
            Posted @ 2006-09-24 07:41
            這個不錯,我曾經還有bigDecimal來寫一個自己使用的四舍五入的方法呢。  回復  更多評論   

          統計

          主站蜘蛛池模板: 丽水市| 全椒县| 荥经县| 涞水县| 康定县| 鄱阳县| 页游| 南投县| 昭苏县| 桓台县| 宁远县| 平原县| 安溪县| 长葛市| 瓦房店市| 宣武区| 贵阳市| 庆元县| 彰化市| 临桂县| 岳阳县| 安阳县| 沿河| 蓝山县| 白沙| 青岛市| 隆子县| 固安县| 祥云县| 漠河县| 海南省| 甘孜| 新巴尔虎左旗| 三明市| 资源县| 冷水江市| 福泉市| 玛多县| 北辰区| 额尔古纳市| 荣昌县|