我是靠谱客的博主 怡然蜜蜂,最近开发中收集的这篇文章主要介绍Java中常用API总结(6)——BigInteger类一、前言二、概述三、常见方法四、注意事项五、结语,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

BigInteger类

  • 一、前言
  • 二、概述
    • 1.API帮助文档
    • 2.使用方法
  • 三、常见方法
    • 1.构造方法
      • 1️⃣格式
      • 2️⃣实例
    • 2.成员方法
      • 1️⃣格式
      • 2️⃣实例
  • 四、注意事项
  • 五、结语


一、前言

平时在存储整数的时候,Java中默认是int类型,int类型有取值范围:-2147483648 ~ 2147483647。如果数字过大,我们可以使用long类型,但是如果long类型也表示不下的时候就需要用到BigInteger类来解决

二、概述

1.API帮助文档

BigInteger所在包是在java.math包下,因此在使用的时候就需要进行导包。我们可以使用BigInteger类进行大整数的计算

在这里插入图片描述

2.使用方法

导包后才能使用

三、常见方法

1.构造方法

1️⃣格式

构造方法这里列举出来三个比较常用的方法,并在下面给出实例以及输出结果便于理解,建议各位小伙伴还是自己敲一遍代码加深印象

public BigInteger(int num, Random rnd) 		//获取随机大整数,范围:[0 ~ 2的num次方-1]
public BigInteger(String val) 				//获取指定的大整数
public BigInteger(String val, int radix) 	//获取指定进制的大整数

2️⃣实例

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

public class TestBigInteger {
    public static void main(String[] args) {

        //获取随机大整数
        Random r=new Random();
        for (int i = 0; i < 5; i++) {
            BigInteger bd1 = new BigInteger(4,r);
            System.out.println(bd1);
        }
        System.out.println("----------此处为分割线----------");
       
        //获取指定的大整数
        BigInteger bd2 = new BigInteger("345678998345623567256780435093457001561080748");
        System.out.println(bd2);
        System.out.println("----------此处为分割线----------");

        //获取指定进制的大整数
        BigInteger bd3 = new BigInteger("1101010110",2);
        System.out.println(bd3);
    }
}

输出结果

14
13
5
7
10
11
3
11
2
11
----------此处为分割线----------
345678998345623567256780435093457001561080748
----------此处为分割线----------
854

2.成员方法

1️⃣格式

public BigInteger add(BigInteger val)					//加法
public BigInteger subtract(BigInteger val)				//减法
public BigInteger multiply(BigInteger val)				//乘法
public BigInteger divide(BigInteger val)				//除法
public BigInteger[] divideAndRemainder(BigInteger val)	 //除法,获取商和余数
public  boolean equals(Object x) 					    //比较是否相同
public  BigInteger pow(int exponent) 					//次幂、次方
public  BigInteger max/min(BigInteger val) 				//返回较大值/较小值
public  int intValue(BigInteger val) 					//转为int类型整数,超出范围数据有误

2️⃣实例

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

public class TestBigInteger {
    public static void main(String[] args) {
		        BigInteger bd1 = BigInteger.valueOf(10);
        BigInteger bd2 = BigInteger.valueOf(5);

        //2.加法
        BigInteger bd3 = bd1.add(bd2);
        System.out.println(bd3);

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

        //4.比较是否相同
        boolean result = bd1.equals(bd2);
        System.out.println(result);

        //5.次幂
        BigInteger bd4 = bd1.pow(2);
        System.out.println(bd4);

        //6.max
        BigInteger bd5 = bd1.max(bd2);

        BigInteger bd6 = BigInteger.valueOf(200);
        double v = bd6.doubleValue();
        System.out.println(v);//200.0
    }
}

输出结果

15
2
0
false
100
200.0

四、注意事项

  • 如果BigInteger表示的数字没有超出long的范围,可以用静态方法获取

  • 如果BigInteger表示的超出long的范围,可以用构造方法获取

  • 对象一旦创建,BigInteger内部记录的值不能发生改变

  • 只要进行计算都会产生一个新的BigInteger对象

五、结语

接下来会讲述BigDecimal类

最后

以上就是怡然蜜蜂为你收集整理的Java中常用API总结(6)——BigInteger类一、前言二、概述三、常见方法四、注意事项五、结语的全部内容,希望文章能够帮你解决Java中常用API总结(6)——BigInteger类一、前言二、概述三、常见方法四、注意事项五、结语所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部