java BigDecimal類/DecimalFormat

BigDecimal類

1.由于在運算的時候,float類型和double很容易丟失精度,在金融、銀行等對數(shù)值精度要求非常高的領(lǐng)域里面,就不能使用float或double了,為了能精確的表示、計算浮點數(shù),Java提供了BigDecimal

2.:如果對計算的數(shù)據(jù)要求高精度時,必須使用BigDecimal類;

3. //開發(fā)時推薦通過傳入字符串的方式 :

? ? ?? BigDecimal bd3 = new BigDecimal("2.0");

? ? ? ? BigDecimal bd4 = new BigDecimal("1.1");

? ? ? ? System.out.println(bd3.subtract(bd4));

DecimalFormat類

1.在一些金融或者銀行的業(yè)務(wù)里面,會出現(xiàn)這樣千分位格式的數(shù)字,¥123,456.00,表示人民幣壹拾貳萬叁仟肆佰伍拾陸元整,java.text包下提供了一個DecimalFormat的類可以滿足這樣的需求。

2.//創(chuàng)建數(shù)字格式化對象

//需求:加入千分位.

DecimalFormat df =new DecimalFormat("###,###");

//開始格式化

System.out.println(df.format(1234567)); //"1,234,567"

//加入千分位,保留2位小數(shù)

DecimalFormat df1 =new DecimalFormat("###,###.##");

System.out.println(df1.format(1234567.123)); //"1,234,567.12"

//加入千分位,保留4位小數(shù),并且不夠補0

DecimalFormat df2 =new DecimalFormat("###,###.0000");

System.out.println(df2.format(1234567.123));

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容