java 判斷 Bigdecimal 的值 正數、負數、0


 1  public static void main(String[] args) {
 2         System.out.println(BigDecimal.ZERO);
 3         String a = "-0.01";
 4         Double b = 10.00;
 5         //new BigDecimal(0.01) Double類型轉換有精度問題!
 6         //BigDecimal val = new BigDecimal(0.01); 0.01000000000000000020816681711721685132943093776702880859375
 7         BigDecimal val = new BigDecimal(b);
 8         BigDecimal var = BigDecimal.valueOf(Double.valueOf(a));
 9         System.out.println(val);
10         System.out.println(var);
11 
12         //true
13         if (val.equals(BigDecimal.TEN)){
14             System.out.println("1");
15         }
16 
17         //signum()函數 判斷 BigDecimal 的值
18         if(var.signum() == 1 ){
19             //var 大於 0  返回 1
20             System.out.println("正數");
21         } else if (var.signum() == 0){
22             //var 等於 0 返回 0
23             System.out.println("0");
24         } else if (var.signum() == -1 ){
25             //var 小於 0 返回 -1
26             System.out.println("負數");
27         }
28 
29         //var 非正數
30         if (var.signum() != 1){
31             System.out.println("非正數!");
32         }
33     }

Bigdecimal的判斷暫時用到這些,如果還有其他的請網友幫忙補充!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM