2023/6/8总结

Object

object是]ava中的顶级父类。所有的类都直接或间接的继承于object类

object类中的方法可以被所有子类访问,所以我们要学习object类和其中的方法

 顶级父类中只有无参构造方法

 2023/6/8总结_第1张图片

2023/6/8总结_第2张图片

 示例代码:

2023/6/8总结_第3张图片

 对象克隆

2023/6/8总结_第4张图片

 分为浅克隆和深克隆

2023/6/8总结_第5张图片

 2023/6/8总结_第6张图片

 BigInteger

可以理解为极大的整数,几乎可以说没有上限

 2023/6/8总结_第7张图片

 注意:对象一旦创建,内部记录的值不能发生改变!

2023/6/8总结_第8张图片

 

 常用方法:

 注意: 对象不能直接加减乘除要用方法来完成!!

 示例代码:

import java.math.BigInteger;
import java.util.Random;

public class BigIntegerDemo1 {
    public static void main(String[] args) {
        //1.获取一个随机大的整数
        BigInteger bd1=new BigInteger(4,new Random());
        System.out.println(bd1);//0~2^4-1

        //2.获取一个指定大的大整数
        //字符串中必须是整数,否则会报错
        BigInteger bd2=new BigInteger("1000");
        System.out.println(bd2);

        //3.获取指定进制的大整数
        //细节:
        //1.字符串中的数字必须是整数
        //2.字符串中的数字必须要和进制吻合
        //比如二进制中,只能有0和1,写其他的就会报错
        BigInteger bd4=new BigInteger("100",2);
        System.out.println(bd4);

        //4.静态方法获取BigInteger的对象,内部有优化
        //细节:
        //表示范围较小,在long的取值范围之类,如果超出long的范围就不行了
        //long:9223372036854775807
        //2.在内部对常用的数字:-16~16进行了优化
        //提前把-16~16先创建好BigInteger的对象,如果多次获取不会重新创建新的
        BigInteger bd5 = BigInteger.valueOf(100);
        System.out.println(bd5);

        //System.out.println(Long.MAX_VALUE);

        //使用方法
        BigInteger bd6=BigInteger.valueOf(10);
        BigInteger bd7=BigInteger.valueOf(3);

        //加法
        BigInteger bd8=bd7.add(bd6);
        System.out.println(bd8);

        //除法,获取商和余数
        BigInteger[] arr=bd6.divideAndRemainder(bd7);
        System.out.println(arr[0]);
        System.out.println(arr[1]);

        //比较是否相同
        boolean result=bd6.equals(bd7);
        System.out.println(result);

        //次幂
        BigInteger bd9 = bd6.pow(2);
        System.out.println(bd9);

        //max,返回较大者,没有创建新的对象
        BigInteger bd10 = bd6.max(bd7);
        System.out.println(bd10);

        //转换为基本数据类型,超出范围报错
        BigInteger bd11 =BigInteger.valueOf(1000);
        int i=bd11.intValue();
        System.out.println(i);


    }
}

 2023/6/8总结_第9张图片

 

 

你可能感兴趣的:(java,jvm,开发语言)