Java中對數字格式化

          最近正在利用業(yè)余時間重新學習j2se的一些知識,因為感覺以前學得太過粗糙了,有時間的話我會把所接觸的一些比較新穎的知識在這里寫下,愿與大家共同分享,一起進步。今天就說說java中數字的格式化。
          java.text.DecimalFormat類就是專門對數字進行格式化的。通過對該類的應用,可以為要輸出的數字加上單位,或者控制數字的精度,用法:可以在DecimalFormat實例化時傳遞格式,也可通過對象調用applyPattern方法來實現設置格式。
          代碼演示如下:
          package formatnumber;

          import java.text.DecimalFormat;

          public class FormatNumber {

                  
          public static void main(String[] args) {
                          DecimalFormat df 
          = new DecimalFormat();
                          
          double data = 1234.56789;
                          System.out.println(
          "格式化之前的數字: " + data);
                          String style 
          = "0.0";//定義要顯示的數字的格式
                          df.applyPattern(style);// 將格式應用于格式化器
                          System.out.println("采用style: " + style + "格式化之后: " + df.format(data));
                          style 
          = "00000.000 kg";//在格式后添加諸如單位等字符
                          df.applyPattern(style);
                          System.out.println(
          "采用style: " + style + "格式化之后: " + df.format(data));
                          
          // 模式中的"#"表示如果該位存在字符,則顯示字符,如果不存在,則不顯示。
                          style = "##000.000 kg";
                          df.applyPattern(style);
                          System.out.println(
          "采用style: " + style + "格式化之后: " + df.format(data));
                          
          // 模式中的"-"表示輸出為負數,要放在最前面
                          style = "-000.000";
                          df.applyPattern(style);
                          System.out.println(
          "采用style: " + style + "格式化之后: " + df.format(data));
                          
          // 模式中的","在數字中添加逗號,方便讀數字
                          style = "-0,000.0#";
                          df.applyPattern(style);
                          System.out.println(
          "采用style: " + style + "格式化之后: " + df.format(data));
                          
          // 模式中的"E"表示輸出為指數,"E"之前的字符串是底數的格式,
                          
          // "E"之后的是字符串是指數的格式
                          style = "0.00E000";
                          df.applyPattern(style);
                          System.out.println(
          "采用style: " + style + "格式化之后: " + df.format(data));
                          
          // 模式中的"%"表示乘以100并顯示為百分數,要放在最后。
                          style = "0.00%";
                          df.applyPattern(style);
                          System.out.println(
          "采用style: " + style + "格式化之后: " + df.format(data));
                          
          // 模式中的"\u2030"表示乘以1000并顯示為千分數,要放在最后。
                          style = "0.00\u2030";
                          
          //在構造函數中設置數字格式
                          DecimalFormat df1 = new DecimalFormat(style);
                          
          //df.applyPattern(style);
                          System.out.println("采用style: " + style + "格式化之后: " + df1.format(data));
                  }

          }


          程序運行結果為:
          格式化之前的數字: 1234.56789
          采用style: 0.0格式化之后: 1234.6
          采用style: 00000.000 kg格式化之后: 01234.568 kg
          采用style: ##000.000 kg格式化之后: 1234.568 kg
          采用style: -000.000格式化之后: -1234.568
          采用style: -0,000.0#格式化之后: -1,234.57
          采用style: 0.00E000格式化之后: 1.23E003
          采用style: 0.00%格式化之后: 123456.79%
          采用style: 0.00‰格式化之后: 1234567.89‰

          posted on 2008-03-06 15:23 非凡DZ 閱讀(7819) 評論(0)  編輯  收藏 所屬分類: J2SE


          只有注冊用戶登錄后才能發(fā)表評論。


          網站導航:
           
          <2008年3月>
          2425262728291
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          導航

          統計

          常用鏈接

          留言簿(2)

          隨筆分類(19)

          隨筆檔案(19)

          友情鏈接

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 资讯 | 青岛市| 梁山县| 红河县| 获嘉县| 井陉县| 调兵山市| 禹城市| 县级市| 北宁市| 隆化县| 南宫市| 安顺市| 荃湾区| 眉山市| 乌兰浩特市| 类乌齐县| 洪湖市| 游戏| 蓬莱市| 舟曲县| 上林县| 通渭县| 天等县| 抚宁县| 鄂州市| 綦江县| 通辽市| 博罗县| 白朗县| 准格尔旗| 乐陵市| 高要市| 宜城市| 得荣县| 思茅市| 米林县| 双牌县| 凭祥市| 衡东县| 罗源县|