日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

NumberFormat和DecimalFormat

發布時間:2023/12/10 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NumberFormat和DecimalFormat 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

##NumberFormat##

調用NumberFormat的工廠方法,如getInstance(),來獲取具體語言環境的NumberFormat(包括默認語言環境)。該類設計有各種功能,使其能夠解析和格式化任意語言環境中的數,包括對西方語言、阿拉伯語和印度語數字的支持。它還支持不同類型的數,包括整數(123)、定點數(123.4)、科學記數法表示的數(1.23E4)、百分數(12%)和金額($123)。所有這些內容都可以本地化。 (通常不直接調用DecimalFormat的構造方法,因為NumberFormat的工廠方法可能返回不同于DecimalFormat的子類。DecimalFormat是NumberFormat的一個具體子類,用于格式化十進制數字。)

/*** 格式化format* */NumberFormat numberFormat = NumberFormat.getNumberInstance(Locale.US);numberFormat.setMaximumIntegerDigits(5); // 整數部分最大位數numberFormat.setMinimumIntegerDigits(3); // 整數部分最小位數numberFormat.setMaximumFractionDigits(5); // 小數部分最大位數numberFormat.setMinimumFractionDigits(3); // 小數部分最小位數String number1 = numberFormat.format(1234567.1234567); // 34,567.12346 四舍五入String number2 = numberFormat.format(12.12); // 012.120 補0Log.d(TAG, " numberFormat : number1=" + number1 + ", number2=" + number2);NumberFormat currencyFormat = NumberFormat.getCurrencyInstance(Locale.CHINA);String currency1 = currencyFormat.format(321283.47656); // ¥?321,283.48currencyFormat.setMaximumFractionDigits(3);String currency2 = currencyFormat.format(321283.47656); // ¥?321,283.477Log.d(TAG, " currencyFormat : number1=" + currency1 + ", number2=" + currency2);NumberFormat percentFormat = NumberFormat.getPercentInstance(Locale.US);String percent1 = percentFormat.format(321283.47656); //32,128,348%Log.d(TAG, " percentFormat : number1=" + percent1 + ", number2=" + percent1);/*** 解析parse* */NumberFormat nf1 = NumberFormat.getInstance(Locale.US);Object obj1 = nf1.parse("123,456");NumberFormat nf2 = NumberFormat.getInstance(Locale.GERMAN); // 德國Object obj2 = nf2.parse("123,456");//Number parse : number1=123456, number2=123.456Log.d(TAG, "Number parse : number1=" + obj1 + ", number2=" + obj2);Number number = percentFormat.parse("32,128,745%");Log.d(TAG, "===" + number.doubleValue()); //321287.45Log.d(TAG, "===" + number.floatValue()); //321287.44Log.d(TAG, "===" + number.intValue()); //321287Log.d(TAG, "===" + number.byteValue()); //7Log.d(TAG, "===" + number.longValue()); //321287

##DecimalFormat##

DecimalFormat df1 = new DecimalFormat("0.0");DecimalFormat df2 = new DecimalFormat("#.#");DecimalFormat df3 = new DecimalFormat("000.000");DecimalFormat df4 = new DecimalFormat("###.###");Log.d(TAG,df1.format(12.35)); //12.4Log.d(TAG,df2.format(12.34)); //12.3Log.d(TAG,df3.format(12.34)); //012.340Log.d(TAG,df4.format(12.34)); //2.34

參考: 官方文檔 https://developer.android.com/reference/java/text/DecimalFormat.html DecimalFormat()格式化輸出數字 http://blog.sina.com.cn/s/blog_8b7a1553010172ex.html java保留兩位小數 http://blog.csdn.net/yuhua3272004/article/details/3075436

總結

以上是生活随笔為你收集整理的NumberFormat和DecimalFormat的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。