當前位置:編程學習大全網 - 編程軟體 - 求java function改錯 輸入數字,去掉該數字的整數部分,保留小數點部分

求java function改錯 輸入數字,去掉該數字的整數部分,保留小數點部分

import?java.math.BigDecimal;

public?class?Temp?{

static?double?partde(double?x)?{?//?獲得?x?的小數部分

BigDecimal?bd?=?BigDecimal.valueOf(x);

//?減去整數值

BigDecimal?de?=?bd.subtract(new?BigDecimal(bd.intValue()));?

return?de.doubleValue();

}

public?static?void?main(String[]?args)?throws?Exception?{

boolean?test1?=?(partde(2.0234)?==?0.0234);

boolean?test2?=?(partde(5.856)?==?0.856);

boolean?test3?=?(partde(6.12)?==?0.12);

boolean?test?=?test1?&&?test2?&&?test3;

System.out.println(test);?//?true

}

}

所以說 float 和 double 只能用來做科學計算或者是工程計算(會損失精度,因為有些小數二進制無法表示,比如0.6,采用乘2法,0.6->0.2->0.4->0.8->0.6,只能是無限循環,二進制表示的數只能逼近0.6),在商業計算中我們壹定要用java.math.BigDecimal

  • 上一篇:兒童編程模式大全
  • 下一篇:Wr702亡靈編程器固件
  • copyright 2024編程學習大全網