包装类、大整数类(BigInteger)和大浮点数类(BigDecimal)

包装类:

Integer的使用:

System.out.println(Integer.MAX_VALUE);//输出2147483647
        int x= 20;
        int y=30;
        System.out.println(Integer.compare(x,y));//小于输出-1
        Integer integer = new Integer(120);
        Integer integer1 = new Integer(250);
        //比较两个大整数对象的内容  相当于string里面的equals方法
        int i = integer.compareTo(integer1);
        System.out.println(i);//-1  

装箱与拆箱:

装箱:从基本类型转换为对应的包装类对象。

拆箱:从包装类对象转换为对应的基本类型。

举例:

//x是一个基本数据类型
        int x=20;
        //把基本数据类型转成包装类对象
        Integer integer = new Integer(x);
        //自动装箱
        Integer integer1=20;
        //自动拆箱
        int s=integemr1+20;

基本数据类型转成string类型的三种方法:

/*
        * 基本数据类型转成string类型的三种方法
        * 1.直接用+连接
        * 2.先转成对应的包装类,在调用tostring()方法
        * 3.使用String的静态方法valueof转换
        * */
​
        //1直接用+连接
        int num=100;
        String numstr1=num+"";
​
        //2先转成对应的包装类,在调用tostring()方法
        Integer integer2 = new Integer(num);
        String numstr2 = integer2.toString();
​
​
        //3使用String的静态方法valueof转换
        String numstr3 = String.valueOf(num);
​
        System.out.println(numstr2);//输出100
​
        if(numstr3 instanceof String){//多态
            System.out.println("正确");
        }

Arrays:

public static void sort(int[] a):按照数字顺序排列指定的数组

public static String toString(int[] a):返回指定数组的内容的字符串表示形式

举例:

int arry[] = {33,22,4443,4};
//按照数字顺序排列
Arrays.sort(arry);
//返回指定数组的内容
System.out.println(Arrays.toString(arry));//输出[4, 22, 33, 4443]

split:

split() 方法根据匹配给定的正则表达式来拆分字符串。

注意: . 、 $、 | 和 * 等转义字符,必须得加 \。

注意:多个分隔符,可以用 | 作为连字符。

语法

public String[] split(String regex, int limit)

参数

  • regex -- 正则表达式分隔符。

  • limit -- 分割的份数。

返回值

字符串数组。

大整数类(BigInteger):

java.math.BigInteger 类,不可变的任意精度的整数。如果运算中,数据的范围超过了long类型后,可以使用 BigInteger类实现,该类的计算整数是不限制长度的。

 

大整数的使用举例:

//大整数类
        BigInteger b1 = new BigInteger("2254362663654757");
        BigInteger b2 = new BigInteger("1234233535436334");
        //两数相加
        BigInteger sum = b1.add(b2);
        //两数相减
        BigInteger subtract = b1.subtract(b2);
        //两数相乘
        BigInteger multiply = b1.multiply(b2);
        //两数相除
        BigInteger divide = b1.divide(b2);
        System.out.println(sum+"\t"+subtract+"\t"+multiply+"\t"+divide);
​

大浮点数类(BigDecimal):

 

我今天第一次用的时候用的第一种,还是有精度问题的出现,我是直接给他传了个double类型的数字,没打""号,就是会丢失精度。

如图:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值