我是靠谱客的博主 怡然蜜蜂,这篇文章主要介绍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️⃣格式

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

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

2️⃣实例

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
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️⃣格式

复制代码
1
2
3
4
5
6
7
8
9
10
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️⃣实例

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
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类一、前言二、概述三、常见方法四、注意事项五、结语内容请搜索靠谱客的其他文章。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部