BigDecimal比较大小用啥方法?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BigDecimal比较大小用啥方法?相关的知识,希望对你有一定的参考价值。
参考技术ABigDecimal比较大小使用compareTo(BigDecimal)方法:
int flag = bigdemical.compareTo(bigdemical1)。
flag = -1,表示bigdemical小于bigdemical1。
flag =0,表示bigdemical等于bigdemical1。
flag =1,表示bigdemical大于bigdemical1。
实际中直接跟0比较就可以了,别跟-1或者1比较。
构造方法
BigDecimal一共有4个构造方法:
BigDecimal(int) 创建一个具有参数所指定整数值的对象。
BigDecimal(double) 创建一个具有参数所指定双精度值的对象。(不建议采用)
BigDecimal(long) 创建一个具有参数所指定长整数值的对象。
BigDecimal(String) 创建一个具有参数所指定以字符串表示的数值的对象。
BigDecimal 基本使用 比较大小和加减乘除
//比较大小: int a = bigdemical.compareTo(bigdemical2) //a = -1,表示bigdemical小于bigdemical2; //a = 0,表示bigdemical等于bigdemical2; //a = 1,表示bigdemical大于bigdemical2; Boolean flag = value1.compareTo(BigDecimal.ZERO) == 1 && value1.compareTo(BigDecimal.ONE) == -1; if (flag) System.out.println("value1大于0小于1"); //加减乘除: BigDecimal bignum1 = new BigDecimal("10"); BigDecimal bignum2 = new BigDecimal("5"); BigDecimal bignum3 = null; //加法 bignum3 = bignum1.add(bignum2); System.out.println("和 是:" + bignum3); //减法 bignum3 = bignum1.subtract(bignum2); System.out.println("差 是:" + bignum3); //乘法 bignum3 = bignum1.multiply(bignum2); System.out.println("积 是:" + bignum3); //除法 bignum3 = bignum1.divide(bignum2); System.out.println("商 是:" + bignum3); //BigDecimal对象转化成基本数据类型: //BigDecimal对象的数值转换成对应的字符串 bigDecimalOne.toString(); //BigDecimal对返回double值 bigDecimalOne.doubleValue(); //BigDecimal对返回float bigDecimalOne.floatValue(); //BigDecimal对返回long值 bigDecimalOne.longValue(); //BigDecimal对返回int值 bigDecimalOne.intValue(); //java中舍入方式: //第一种方法:保留两位小数 double db = bigDecimalTwo.setScale(2, RoundingMode.HALF_UP).doubleValue(); System.out.println(db); // 第二种方法:保留两位小数 DecimalFormat df = new DecimalFormat("#.00"); df.format(bigDecimalTwo);
以上是关于BigDecimal比较大小用啥方法?的主要内容,如果未能解决你的问题,请参考以下文章