吾爱乐享
个人学习网站

JAVA之学习biginteger类的使用和bigdecimal类的使用

biginteger类的使用

  • A:BigInteger的概述

    • * 可以让超过Integer范围内的数据进行运算
  • * B:构造方法

    • * public BigInteger(String val)
  • * C:成员方法

    • * 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)

BigInteger案例代码

package com.fenxiangbe.regex;

import java.math.BigInteger;

public class Demo_BigInteger {

	/**
	 	A:BigInteger的概述
			* 可以让超过Integer范围内的数据进行运算
		* B:构造方法
			* public BigInteger(String val)
		* C:成员方法
			* 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 static void main(String[] args) {
		BigInteger bi1 = new BigInteger("100");
		BigInteger bi2 = new BigInteger("2");
		
		System.out.println(bi1.add(bi2));//bi1+bi2=102
		System.out.println(bi1.subtract(bi2));//bi1-bi2=98
		System.out.println(bi1.multiply(bi2));//bi1*bi2=200
		System.out.println(bi1.divide(bi2));//bi1/bi2=50
		
		BigInteger[] arr = bi1.divideAndRemainder(bi2);// bi1/bi2=50....0
		for (int i = 0; i < arr.length; i++) {
			System.out.println(arr[i]);
		}
	}

}

bigdecimal类的使用

  • A:BigDecimal的概述

    • * 由于在运算的时候,float类型和double很容易丢失精度,演示案例。
    • * 所以,为了能精确的表示、计算浮点数,Java提供了BigDecimal
    • * 不可变的、任意精度的有符号十进制数。
  • * B:构造方法

    • * public BigDecimal(String val)
  • * C:成员方法

    • * public BigDecimal add(BigDecimal augend)
    • * public BigDecimal subtract(BigDecimal subtrahend)
    • * public BigDecimal multiply(BigDecimal multiplicand)
    • * public BigDecimal divide(BigDecimal divisor)
  • * D:案例演示

    • * BigDecimal类的构造方法和成员方法使用

BigDecimal的案例代码

package com.fenxiangbe.regex;

import java.math.BigDecimal;

public class Demo_BigDecimal {

	/**
	 	* A:BigDecimal的概述
			* 由于在运算的时候,float类型和double很容易丢失精度,演示案例。
			* 所以,为了能精确的表示、计算浮点数,Java提供了BigDecimal
		
			* 不可变的、任意精度的有符号十进制数。
		* B:构造方法
			* public BigDecimal(String val)
		* C:成员方法
			* public BigDecimal add(BigDecimal augend)
			* public BigDecimal subtract(BigDecimal subtrahend)
			* public BigDecimal multiply(BigDecimal multiplicand)
			* public BigDecimal divide(BigDecimal divisor)
		* D:案例演示
			* BigDecimal类的构造方法和成员方法使用
	 */
	public static void main(String[] args) {
		BigDecimal bd1 = new BigDecimal(2.0);
		BigDecimal bd2 = new BigDecimal(1.1);
		System.out.println(bd1.subtract(bd2));//不推荐 不够精确,2.0-1.1=0.9,但是运行结果却是0.899999999999999911182158029987476766109466552734375
		
		BigDecimal bd3 = new BigDecimal("2.0");
		BigDecimal bd4 = new BigDecimal("1.1");
		System.err.println(bd3.subtract(bd4));//推荐,转换成字符串进行运算 就能精确算出值2.0-1.1=0.9
		
		//通过value of方法也可以运算
		BigDecimal bd5 = BigDecimal.valueOf(2.0);
		BigDecimal bd6 = BigDecimal.valueOf(1.1);
		System.out.println(bd5.subtract(bd6));//推荐 ,用这两种方法都可以
		
	}

}

赞(0) 打赏
未经允许不得转载:吾爱乐享 » JAVA之学习biginteger类的使用和bigdecimal类的使用

评论 抢沙发

评论前必须登录!

 

推荐免费资源共享,个人经验总结学习

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏