我是靠谱客的博主 俭朴萝莉,最近开发中收集的这篇文章主要介绍Java BigDecimal类(常用的方法)和自己的理解,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

BigDecimal类(常用的方法)

​ BigDecimal有自身的构造器,具体构造方法参见API

① abs方法 BigDecimal abs(); 一般适用于整数的取绝对值

public static void main(String[] args) {
    BigDecimal B1 = new BigDecimal(-2);
    System.out.println(B1.abs());
}

结果:2

② add方法 常用下面的这种形式: (常用于两个整数的求值,当b1,b2不为整数的时候,求和精度有误,当求和加起来为整数时,精度无误。)

public static void main(String[] args) {
    BigDecimal b1 = new BigDecimal(-2);
    BigDecimal b2 = new BigDecimal(6);
    System.out.println(b1.add(b2));
}

结果:4

③ divide方法 求商 返回值为BigDecimal。注意:如果无法表示准确的商(因为它具有非终止的十进制扩展),则抛出ArithmeticException 。

public static void main(String[] args) {
    BigDecimal b1 = new BigDecimal(8);
    BigDecimal b2 = new BigDecimal(4);
    System.out.println(b1.divide(b2));
}

结果:2

④ 除了equals方法其他方法均无参数,返回值即是转换的值。只有int 和 long 转换存在丢失数据信息的可能,则有一个检查的方法在转换原基础上增加了Exact。

double doubleValue() 将 BigDecimal转换为 double 。
boolean equals(Object x) 将此 BigDecimal与指定的 Object进行相等性比较。
float floatValue() 将 BigDecimal转换为 float 。
int hashCode() 返回此 BigDecimal的哈希码。
int intValue() 将 BigDecimal成 int 。
int intValueExact() 将 BigDecimal转换为 int ,检查是否丢失了信息。
long longValue() 将 BigDecimal转换为 long 。
long longValueExact() 将此 BigDecimal转换为 long ,检查是否丢失了信息。

⑤ max,min有一个BigDecimal类型参数,返回值类型BigDecimal。返回最大或最小值。

⑥ valueOf方法,将double或者long转换为BigDecimal类型。

注意:当我们使用构造方法传入的是字符串数字的时候,小数丢失精度问题则没有了

最后

以上就是俭朴萝莉为你收集整理的Java BigDecimal类(常用的方法)和自己的理解的全部内容,希望文章能够帮你解决Java BigDecimal类(常用的方法)和自己的理解所遇到的程序开发问题。

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

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

评论列表共有 0 条评论

立即
投稿
返回
顶部