Java 大数值

1、BigInteger (大的整数)

引用的包类:java.math.BigInteger:不可变(不会产生一个新的对象)的任意精度(这个数可以很大)的有符号(十进制数)是十进制数。

BigInteger 构造方法:

BigInteger (String val):将十进制字符串val转换为BigInteger对象。

BigInteger (String val,int radix):按照指定基数radix将字符串val转换为BigInteger对象。

BigInteger 提供多种方法,下面例举几个常用的方法:

int compareTo(BigInteger  val):将当前对象与参数val进行比较,方法返回值是int,如果返回值是0.

则相等;如果返回值小于0.则此对象小姨参数对象;如果返回值大于0.则此对象大于参数对象。

BigInteger  add(BigInteger  val):加运算,当前对象数值加参数val.

BigInteger  subtract(BigInteger  val):减运算,当前对象数值减参数val.

BigInteger  multract(BigInteger  val):乘运算,当前对象数值乘以参数val.

BigInteger  divide(BigInteger  val):除运算,当前对象数值除以参数val.

代码如下:

import java.math.BigInteger 
public class BigInteger {



	public static void main(String[] args) {
		//创建BigInteger,字符串表示10进制数值
		BigInteger  number1= new BigInteger("999999999999");
		//创建BigInteger,字符串表示16进制数值
		BigInteger  number2= new BigInteger("567800000",16);
			
		//加法操作
		System.out.println("加法操作:"+number1.add(number2));
		//减法操作
		System.out.println("减法操作:"+number1.subtract(number2));
		//乘法操作
		System.out.println("乘法操作:"+number1.multiply(number2));
		//除法操作
		System.out.println("除法操作:"+number1.divide(number2));

2、BigDecimal

BigDecimal构造方法有很多:

BigDecimal(BigInteger  val):将BigInteger对象val转换为BigDecimal对象。

BigDecimal(double val):将double转换为BigDecimal对象,参数val是double类型的二进制浮点值准确的十进制表示形态。

BigDecimal提供多种方法,下面例举几个常用的方法:

int compareTo(BigDecimal val):将当前对象与参数val进行比较,方法返回值是int,如果返回值是0.

则相等;如果返回值小于0.则此对象小姨参数对象;如果返回值大于0.则此对象大于参数对象。

BigDecimal add(BigDecimal val):加运算,当前对象数值加参数val.

BigDecimal subtract(BigDecimal val):减运算,当前对象数值减参数val.

BigDecimal multract(BigDecimal val):乘运算,当前对象数值乘以参数val.

BigDecimal divide(BigDecimal val):除运算,当前对象数值除以参数val.

BigDecimal divide(BigDecimal val,int roundingMode):除运算,当前对象数值除以参数val,.roundingMode要应用的舍入模式。

import java.math.BigDecimal;

public class BigDecimal {

	public static void main(String[] args) {
		//创建BigDecimal,通过字符参数串创建
		BigDecimal  number1= new BigDecimal("999999999999,99988888");
		//创建BigDecimal,通过double参数穿件
		BigDecimal  number2= new BigDecimal(567800000.8888888);
			
		//加法操作
		System.out.println("加法操作:"+number1.add(number2));
		//减法操作
		System.out.println("减法操作:"+number1.subtract(number2));
		//乘法操作
		System.out.println("乘法操作:"+number1.multiply(number2));
		//除法操作
		System.out.println("除法操作:"+number1.divide(number2,BigDecimal.ROUND_HALF_UP));


}
发布了96 篇原创文章 · 获赞 13 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/weixin_39559301/article/details/104662655