Integer / BigInteger / BigDecimal 方法

 

 

 

import java.math.BigDecimal;
import java.math.*;


public class Main{
     public static void main(String[] args){
           /**
            * Integer类 
            * MAX_VALUE:最大值,int最大值+1变成int最小值 
            * MIN_VALUE:  最小值,int最小值-1变成int最大值
            */
           
           System.out.println(Integer.MAX_VALUE+1 == Integer.MIN_VALUE); //true
           System.out.println(Integer.MIN_VALUE-1 == Integer.MAX_VALUE); //true
           System.out.println(Integer.MAX_VALUE);  //2147483647
           System.out.println(Integer.MIN_VALUE);  //-2147483648
           
           /**
            * 可以将数字以2进制字符串的形式返回      Integer.toBinaryString(int n);
            * 可以将数字以16进制字符串的形式返回    Integer.toHexString(int n);
            */
           System.out.println(Integer.toBinaryString(15));   //"1111"
           System.out.println(Integer.toHexString(16) instanceof String);   //"10"
           
           
           int k = 6;
        Integer kk = Integer.valueOf(k);  //int转换成Integer  
        System.out.println(k);    //6
        System.out.println(kk);   //6
            
        k = Integer.parseInt("13"); //字符串转换成int类型  
        System.out.println(k);   //13
            
        k = Integer.parseInt("110", 2); //radix进制的字符串转换成int  
        System.out.println(k);  //6
           
        
        System.out.println("---------------------------------------------------------------------");
        
           
        
        //BigInteger  add(加)。subtract(减)。multiply(乘)。divide(除)
        //valueOf()(对数据初始化)
        
        BigInteger a1 = new BigInteger("10000000000000000000004");
        BigInteger a2 = BigInteger.valueOf(2); //对数据初始化
        System.out.println(a1.add(a2));       //10000000000000000000006
        System.out.println(a1.subtract(a2));  //10000000000000000000002
        System.out.println(a1.multiply(a2));  //20000000000000000000008
        System.out.println(a1.divide(a2));    //5000000000000000000002
        System.out.println("---------------------------------------------------------------------");
        
        
        
        //BigDecimal 用来商业精确计算浮点数   import java.math.BigDecimal;
        // add(加)。subtract(减)。multiply(乘)。divide(除)
        BigDecimal d1 = new BigDecimal("3.0");
           BigDecimal d2 = new BigDecimal("2.0");
           
           BigDecimal d3 = d1.subtract(d2);//减法运算  d3 = 0.1
           BigDecimal d4 = d1.add(d2);     // d4 = 5.9
           System.out.println(d1.multiply(d2));  //6.00
           System.out.println(d1.divide(d2));   //1.5
        
           
           System.out.println(d3 instanceof Number);//true
           System.out.println(d3 instanceof BigDecimal); //true
           
           BigDecimal aDouble =new BigDecimal(1.22);
           System.out.println("construct with a double value: " + aDouble);// 1.2199999999999999733546474089962430298328399658203125
           BigDecimal aString = new BigDecimal("1.22");
        System.out.println("construct with a String value: " + aString);//1.22
         
     }
 }

 

转载于:https://www.cnblogs.com/chengdabelief/p/7604475.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值