java中BigDecimal进行加减乘除的基本用法

时间:2021-05-19

前言

众所周知Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。float和double只能用来做科学计算或者是工程计算,在商业计算中要用java.math.BigDecimal。

BigDecimal所创建的是对象,我们不能使用传统的+、-、*、/等算术运算符直接对其对象进行数学运算,而必须调用其相对应的方法。

方法中的参数也必须是BigDecimal的对象。构造器是类的特殊方法,专门用来创建对象,特别是带有参数的对象。

示例代码如下

import java.math.BigDecimal;public class T { public static void main(String[] args) { String a = "9999.9999"; int b = 9999; double c = 9999.9999; char d = 99; System.out.println("==================="); // 不同类型转为BigDecimal BigDecimal ma = new BigDecimal(a); BigDecimal mb = new BigDecimal(b); BigDecimal mc = new BigDecimal(c); BigDecimal md = new BigDecimal(d); System.out.println("ma:"+ma.toString()); System.out.println("mb:"+mb.toString()); System.out.println("mc:"+mc.toString()); System.out.println("md:"+md.toString()); System.out.println("==================="); // 加 BigDecimal add = ma.add(mb); System.out.println("加法:"+add); // 减 BigDecimal sub = ma.subtract(mb); System.out.println("减法:"+sub); // 乘 BigDecimal mul = mb.multiply(md); System.out.println("乘法:"+mul); // 除 BigDecimal div = mb.divide(md); System.out.println("除法:"+div); System.out.println("==================="); mc = mc.setScale(2, BigDecimal.ROUND_HALF_UP); System.out.println("四舍五入:"+mc); System.out.println("==================="); mc = mc.negate(); System.out.println("负数:"+mc); System.out.println("==================="); }}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章