博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java大数字操作:BigInteger,BigDecimal(浮点型)
阅读量:6634 次
发布时间:2019-06-25

本文共 1605 字,大约阅读时间需要 5 分钟。

java大数字操作:

BigInteger:大数字整型的

BigDecimal(浮点型):大数字小数的,也适用大的整数

 

BigInteger:

        String num1 = "100381828646148164";		String num2 = "10998979766868";		BigInteger big1 = new BigInteger(num1);		BigInteger big2 =new BigInteger(num2);		System.out.println("两数相家:" + big1.add(big2));		System.out.println("两数相减:" + big1.subtract(big2));		System.out.println("两数相乘:" + big1.multiply(big2));		System.out.println("两数相除:" + big1.divide(big2));

  

BigDecimal:

import java.math.BigDecimal;class MyMath{	public static double add(String num1, String num2)	{		BigDecimal bd1 = new BigDecimal(num1);		BigDecimal bd2 = new BigDecimal(num2);		return bd1.add(bd2).doubleValue();	}		public static double sub(String num1, String num2)	{		BigDecimal bd1 = new BigDecimal(num1);		BigDecimal bd2 = new BigDecimal(num2);		return bd1.subtract(bd2).doubleValue();			}		public static double mul(String num1, String num2)	{		BigDecimal bd1 = new  BigDecimal(num1);		BigDecimal bd2 = new BigDecimal(num2);		return bd1.multiply(bd2).doubleValue();	}		public static double div(String num1, String num2)	{		BigDecimal bd1 = new BigDecimal(num1);		BigDecimal bd2 = new BigDecimal(num2);		return bd1.divide(bd2).doubleValue();	}		public static double round(String num1, int scale)	{		BigDecimal bd1 = new BigDecimal(num1);		BigDecimal bd2 =  new BigDecimal(1);		return bd1.divide(bd2, scale, BigDecimal.ROUND_HALF_UP).doubleValue();	}}public class BigDecimalDemo {	public static void main(String[] args) {		// TODO 自动生成的方法存根				String num1 = "12345.524234";		String num2 = "1234.23424";		System.out.println("相加:"+ MyMath.add(num1,num2));	}}

  

 

转载地址:http://gbbvo.baihongyu.com/

你可能感兴趣的文章