Java常用API(一):大数类

Java中,BigInteger类可以表示long型都无法表示的整型数据。大数类BigInteger不是基本数据类型,对于大数据的操作都是通过字符串来,因此不能用整型的"+"、"-"、"*"、"/"来简单计算,他有自己运算方法。

使用大数类来操作数据前,需要先通过构造器创建一个BigInteger 对象。

BigInteger构造器

查看关于BigInteger的Java API

BigInteger构造器
在这里插入图片描述
valueOf
public static BigInteger valueOf​(long val)
返回一个BigInteger,其值等于指定long的值。

BigInteger a=new BigInteger("666666666666666666666");
BigInteger b=BigInteger.valueOf(3);

得到大数类对象之后就可以进行运算。

大数类四则运算

大数加法

add
public BigInteger add​(BigInteger val)
与整数的加法一样 不过返回值是BigInteger

a.add(b) //a加b 

大数减法

subtract
public BigInteger subtract​(BigInteger val)
与整数的减法一样 不过返回值是BigInteger

a.subtract(b) //a减b

大数乘法

multiply
public BigInteger multiply​(BigInteger val)
与整数的乘法一样 不过返回值是BigInteger

a.multiply(b) //a乘以b

大数除法

divide
public BigInteger divide​(BigInteger val)
与整数除法一样 不过返回值是BigInteger
另外还要注意处理除数为零的异常
ArithmeticException - if val is zero.

其他常用方法

pow
public BigInteger pow(int exponent)
返回当前大整数的exponent次方

abs
abs
public BigInteger abs()
返回当前大整数的绝对值

toString
public String toString()
将当前大整数转换成十进制的字符串形式

示例:

package 大数类常用方法;

import java.math.BigInteger;

/**
* @author JohnnyLin
* @version Creation Time:2020年6月12日 下午9:44:39
*/
public class BigInteger的常用方法 {

	public static void main(String[] args) {
		BigInteger a=new BigInteger("666666666666666666666");
		BigInteger b=BigInteger.valueOf(3);
		
		System.out.println(a.add(b)); //加法 666666666666666666669
		System.out.println(a.subtract(b) );//减法 666666666666666666663
		System.out.println(a.multiply(b));//乘法 1999999999999999999998
		System.out.println(a.divide(b));//除法 222222222222222222222
		
		System.out.println(b.pow(5)); //b的五次方 243
		System.out.println(b.subtract(a).abs());//b-a的绝对值 666666666666666666663
		String s=b.toString(); //将b转为字符串类型
		System.out.println(s); //3
		

	}

}

蓝桥杯Java B组的第三题复数幂就用到了大数类

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值