我是靠谱客的博主 着急外套,最近开发中收集的这篇文章主要介绍Java学习笔记-BigDecimal使用,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前言

最近翻公司的代码,发现代码中大量出现了BigDecimal的使用,这个东西在以前的业务中没有看到过,记录下来

 

使用

1.why

如果我们需要精确计算的结果,则必须使用BigDecimal类来操作。

 

2.what

Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。而且 BigDecimal所创建的是对象,故我们不能使用传统的+、-、*、/等算术运算符直接对其对象进行数学运算,而必须调用其相对应的方法。方法中的参数也必须是BigDecimal的对象。

通常建议优先使用String构造方法。

以此为例子:BigDecimal b =new BigDecimal("0.1");

 

3.how

首先导入包,基本上idea会智能提示我们导入,简单又方便

import java.math.BigDecimal;

3.1 加减乘除

  1. add(BigDecimal)

    BigDecimal对象中的值相加,返回BigDecimal对象

  2. subtract(BigDecimal)

    BigDecimal对象中的值相减,返回BigDecimal对象

  3. multiply(BigDecimal)

    BigDecimal对象中的值相乘,返回BigDecimal对象

  4. divide(BigDecimal)

    BigDecimal对象中的值相除,返回BigDecimal对象

  5. toString()

    将BigDecimal对象中的值转换成字符串

  6. doubleValue()

    将BigDecimal对象中的值转换成双精度数

  7. floatValue()

    将BigDecimal对象中的值转换成单精度数

  8. longValue()

    将BigDecimal对象中的值转换成长整数

  9. intValue()

    将BigDecimal对象中的值转换成整数

3.2 和0比较

判断是否为0:amount.compareTo(BigDecimal.ZERO)==0

判断是否大于0:amount.compareTo(BigDecimal.ZERO) > 0

判断是否小于0:amount.compareTo(BigDecimal.ZERO) < 0

 

3.3 两个数比较

if(a.compareTo(b) == -1){
    System.out.println("a小于b");
}
 
if(a.compareTo(b) == 0){
    System.out.println("a等于b");
}
 
if(a.compareTo(b) == 1){
    System.out.println("a大于b");
}
 
if(a.compareTo(b) > -1){
    System.out.println("a大于等于b");
}
 
if(a.compareTo(b) < 1){
    System.out.println("a小于等于b");
}

   

 

 

 

最后

以上就是着急外套为你收集整理的Java学习笔记-BigDecimal使用的全部内容,希望文章能够帮你解决Java学习笔记-BigDecimal使用所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部