Java_BigDecimal类型比较大小

Java_BigDecimal类型比较大小这个类是java里精确计算的类1比较对象是否相等一般的对象用equals,但是BigDecimal比较特殊,举个例子:BigDecimala=BigDecimal.valueOf(1.0);BigDecimalb=BigDecimal.valueOf(1.000);在现实中这两个数字是相等的,但是问题来来了…

大家好,又见面了,我是你们的朋友全栈君。

这个类是java里精确计算的类

   1 比较对象是否相等
     一般的对象用equals,但是BigDecimal比较特殊,举个例子:
     BigDecimal a=BigDecimal.valueOf(1.0);
     BigDecimal b=BigDecimal.valueOf(1.000);
     在现实中这两个数字是相等的,但是问题来来了
     a.equals(b)结果是false;怎么不相等了呢?这个问题我也不知道
     解决办法:
            if(a.compareTo(b)==0)结果是true
     public int compareTo(BigDecimal val)
结果是-1 小于
       0 等于
       1 大于

if(a.compareTo(b) == -1){

a

}

if(a.compareTo(b)==0){

a=b;

}

if(a.compareTo(b)==1){

a>b;

}

 

public static MathContext mc = new MathContext();

public static BigDecimal add(BigDecimal a1,BigDecimal a2){

   a1=null2Zero(a1);

   a2=null2Zero(a2);

   return a1.add(a2,mc);

}

public static BigDecimal null2Zero(BigDecimal arg){

    return arg==null ? BigDecimal.ZERO : arg ;

}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159069.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 红旗 Linux 官方社区_centos桌面图标

    红旗 Linux 官方社区_centos桌面图标参考资料下载:http://www.ctdisk.com/u/665442 计算机和网络技术不断推进着人类的生产力,Linux的诞生又为之带来一场开放与自由的变革。现在,作为亚洲最大、发展最迅速的Linux产品发行商,北京中科红旗软件技术有限公司(红旗软件)引领着这场变革的方向,通过提供高品质的产品和服务,开创全新的计算体验,帮助企业增强其整体竞争力,提高个人工作效率,将用户业务价值和Li

    2022年8月21日
    9
  • 1192啥意思_有向图的拓扑排序算法

    1192啥意思_有向图的拓扑排序算法由于无敌的凡凡在2005年世界英俊帅气男总决选中胜出,Yali Company总经理Mr.Z心情好,决定给每位员工发奖金。公司决定以每个人本年在公司的贡献为标准来计算他们得到奖金的多少。于是Mr.Z下令召开 m 方会谈。每位参加会谈的代表提出了自己的意见:“我认为员工 a 的奖金应该比 b 高!”Mr.Z决定要找出一种奖金方案,满足各位代表的意见,且同时使得总奖金数最少。每位员工奖金最少为100元,且必须是整数。输入格式第一行包含整数 n,m,分别表示公司内员工数以及参会代表数。接下来 m

    2022年8月9日
    5
  • Python学习之路40-属性描述符

    Python学习之路40-属性描述符Python学习之路40-属性描述符

    2022年4月20日
    43
  • nyaa镜像站 nyaa反向代理站「建议收藏」

    提供一个可以磁力转种子,并且资源中心里边是nyaa镜像站的网站:https://magnet-vip.com资源中心做了登录限定,防止无法访问!

    2022年4月7日
    955
  • offsetof(s,m)解析「建议收藏」

    offsetof(s,m)解析「建议收藏」使用实例:typedefstruct{constAVClass*class;char*expr_str;AVExpr*expr;doublevar_values[VAR_VARS

    2022年7月2日
    27
  • 感觉自己不会的东西太多了,不知道如何下手?

    感觉自己不会的东西太多了,不知道如何下手?GitHub8.8kStar的Java工程师成神之路,不来了解一下吗?GitHub8.8kStar的Java工程师成神之路,真的不来了解一下吗?GitHub8.8kStar的Java工程师成神之路,真的确定不来了解一下吗?如果让我统计下,粉丝问我做多的问题是什么,这个问题肯定可以排前5,问出这个问题的朋友们遍布各个年龄段。实话说,这个问题同样也困扰过我,大概就是我刚…

    2022年7月7日
    16

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号