package com.sprucetec.tms.utils;

import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Calendar; /**
* BigDecimal工具类
* @author yangweiqiang
* @date 2016/12/1
*/
public class BigDecimalUtils { private BigDecimalUtils(){} /**
* 如果value为null,则转换为 0
* @param value
* @return
*/
public static BigDecimal nullToZero(BigDecimal value){
if (null == value){
return BigDecimal.ZERO;
} return value;
} /**
* 判断是否为0
* @param money
* @return
*/
public static boolean isZero(BigDecimal money) {
return BigDecimal.ZERO.compareTo(money)==0;
} /**
* 大于0
*/
public static boolean greaterThanZero(BigDecimal value){
if (value==null) return false;
return value.compareTo(BigDecimal.ZERO) == 1;
} /**
* 小于0
*/
public static boolean lessThanZero(BigDecimal value){
if (value==null) return false;
return value.compareTo(BigDecimal.ZERO) == -1;
} /**
* v1 > v2
*/
public static boolean greater(BigDecimal v1, BigDecimal v2) {
if (v1==null || v2==null) return false;
return v1.compareTo(v2) == 1;
} /**
* v1 < v2
*/
public static boolean less(BigDecimal v1, BigDecimal v2) {
if (v1==null || v2==null) return false;
return v1.compareTo(v2) == -1;
} /**
* v1 = v2
*/
public static boolean equals(BigDecimal v1, BigDecimal v2) {
if (v1==null || v2==null) return false;
return v1.compareTo(v2) == 0;
}
}

BigDecimalUtils的更多相关文章

  1. BigDecimalUtils BigDecimal加减乘除

    public class BigDecimalUtil { private static int DEF_DIV_SCALE = 10; // 默认精确的小数位 /** * 提供精确的加法运算. * ...

  2. 转:POI操作Excel导出

    package com.rd.lh.util.excel; import java.beans.PropertyDescriptor; import java.io.FileOutputStream; ...

  3. double工具类

    package com.zq.utils; /** * * 经度数字操作类 * * Created by MyEclipse. Author: ChenBin E-mail: chenbin_2008 ...

  4. Java 基础类库

    与用户互动 1. 运行java程序的参数 public static void main(Stirng[] args) 这个方法是有JVM调用,因此用public static修饰,并且没有返回值,同 ...

  5. JAVA BigDecimal 高精度运算

    文章参考一位博友,由于时间太久忘了链接,见谅! public class BigDecimalUtils { private static final int DIV_SCALE = 10;// 除法 ...

随机推荐

  1. 【Erlang】源码安装

    Erlang介绍 Erlang(['ə:læŋ])是一种通用的面向并发的编程语言,它由瑞典电信设备制造商爱立信所辖的CS-Lab开发,目的是创造一种可以应对大规模并发活动的编程语言和运行环境. Erl ...

  2. 栈(NOIP2003&水题测试2017082501)

    题目链接:栈 这题不难. 我们看一下,其实可以发现是卡特兰数. 不知道卡特兰数?没事,给你简单讲一下. 卡特兰数的递推式f(n)=f(0)*f(n-1)+f(1)*f(n-2)+-+f(n-2)*f( ...

  3. hdu 6073

    题意: 给出一个二部图,U.V分别是二部图的两个点集,其中,U中每个点会有两条边连到V中两个不同的点. 完美匹配定义为:所有点都成功匹配. 思路:已知一定是完美匹配了呀(也一定存在),我们先把度数为一 ...

  4. canvas 实现太阳系效果

    一:创建画布 <canvas width="1000" height="1000" id="solar" style="ba ...

  5. 导入CA证书报错 keytool error: java.lang.Exception: Input not an X.509 certificate

    导入CA证书报错: keytool error: java.lang.Exception: Input not an X.509 certificate 如果你的CA证书是如下格式的: -----BE ...

  6. 2019.01.21 bzoj2989: 数列(二进制分组+主席树)

    传送门 二进制分组入门题. 主席树写错调题2h+2h+2h+体验极差. 题意简述:给一堆点,支持加入一个点,询问有多少个点跟(x,y)(x,y)(x,y)曼哈顿距离不超过kkk. 思路:题目要求的是对 ...

  7. layer 弹框不显示内容

    // layer的弹框不显示信息 可能是背景颜色和字体颜色冲突 改下字体颜色即可 layer.msg('<p style="color:black">用户名不能为空&l ...

  8. 新加了一块硬盘,在bios中可以看的到,在系统的磁盘管理器中看不到新加硬盘

    今天新加了一块硬盘,进入bios中可以看到新加的硬盘,但是进入系统后在磁盘管理及磁盘驱动器中都看不到.并且在设备管理器下其他设备出现了ATA channel1,前面显示感叹号,如下图所示: 而且电脑变 ...

  9. 为什么行内元素不能设置margin-top/margin-bottom/padding-top/padding-bottom?

    HTML 里的元素分为替换元素(replaced element)和非替换元素(non-replaced element).- 替换元素是指用作为其他内容占位符的一个元素.最典型的就是img,它只是指 ...

  10. shell字符串分割截取和转换总结

    一:字符串的截取 假定有定义变量VAR=mm/aa/bb/dd 1.获取字符串长度:echo "${#VAR}",即输出11: 2.非贪婪模式删除左边的,保留右边的:echo &q ...