import java.math.BigDecimal;
import static java.lang.System.out;
public class BaseClass {
public static void main(String[] args) {
BigDecimal num1 = new BigDecimal("100");
BigDecimal num2 = new BigDecimal("50"); //加法
BigDecimal result1 = num1.add(num2);
out.println("和 是 : " + result1); //减法
BigDecimal result2 = num1.subtract(num2);
out.println("差 是 : " + result2); //乘法
BigDecimal result3 = num1.multiply(num2);
out.println("积 是 : " + result3); //除法
BigDecimal result4 = num1.divide(num2);
out.println("商 是 : " + result4); //比较
BigDecimal num = new BigDecimal("100"); //用做比较的值
out.println(num1.compareTo(num2)); //大于 时,返回 1
out.println(num.compareTo(num1)); //等于 时,返回 0
out.println(num2.compareTo(num1)); //小于 时,返回 -1 out.println(num1.min(num2)); //求两个数的最小值,返回小的数
out.println(num1.max(num2)); //求两个数的最大值,返回大的数 // compareTo方法比较时,不同于equals方法,需要两边都不为null,否则会报空指针异常,
// 源码如下
// public int compareTo(BigDecimal val) {
// // Quick path for equal scale and non-inflated case.
// if (scale == val.scale) {
// long xs = intCompact;
// long ys = val.intCompact;
// if (xs != INFLATED && ys != INFLATED)
// return xs != ys ? ((xs > ys) ? 1 : -1) : 0;
// }
// int xsign = this.signum();
// int ysign = val.signum();
// if (xsign != ysign)
// return (xsign > ysign) ? 1 : -1;
// if (xsign == 0)
// return 0;
// int cmp = compareMagnitude(val);
// return (xsign > 0) ? cmp : -cmp;
// } // max/min方法源代码如下
// public BigDecimal max(BigDecimal val) {
// return (compareTo(val) >= 0 ? this : val);
// }
// public BigDecimal min(BigDecimal val) {
// return (compareTo(val) <= 0 ? this : val);
// }
}
}

BigDecimal的加减乘除及比较大小的更多相关文章

  1. BigDecimal进行加减乘除计算

    以前大部分关于查询计算的逻辑是在sql语句中执行的,但是有时候会出现比较复杂的计算情况,需要我们在代码中进行计算,这个时候使用BigDecimal进行计算会很方便. BigDecimal num1 = ...

  2. BigDecimal的加减乘除,比较,小数保留

    关于BigDecimal的一些常用基本操作记录 1        BigDecimal b1 = new BigDecimal("1.124"); 2        BigDeci ...

  3. BigDecimal 精准加减乘除

    解决了double和float精确度的问题 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算.双精度浮点型变量double可以处理16位有效 ...

  4. BigDecimal处理加减乘除

    public static void main(String[] args) { BigDecimal totalDoneAmt = new BigDecimal(2); Double d1 = ad ...

  5. BigDecimal的加减乘除

    Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算.双精度浮点型变量double可以处理16位有效数.在实际应用中,需要对更大或者更小的数进行 ...

  6. 价格BigDecimal的加减乘除、小数四舍五入、比较

    num2必须改用传入String类型 //加法 BigDecimal result1 = num1.add(num2); //减法 BigDecimal result2 = num1.subtract ...

  7. Java BigDecimal类的使用和注意事项

    1.对于金额相关运算,若是精度较高,基本上用BigDecimal进行运算,精度要求低的话用Long.Double即可 2.web后台接受金额用String接受,展示到前端一般也转成 String 3. ...

  8. JAVA BigDecimal 用法

    一.BigDecimal 的加减乘除 BigDecimal bignum1 = new BigDecimal("10"); BigDecimal bignum2 = new Big ...

  9. 【Java】常用数据类型转换(BigDecimal、包装类、日期等)

    新工作转到大数据方向,每天都要面对数据类型互相转换的工作,再加上先前面试发现这部分的知识盲点, 决定复习之余自己再写一套便捷的方法,以后会比较方便.(虽然公司有现成封装的类,里头还有些遗漏的地方,暂时 ...

随机推荐

  1. opencv VideoCapture使用示例

    在centos7下验证VideoCapture功能. 1 opencv处理视频时要使用ffmpeg,这里使用添加源的方式安装,分为3步 1.1 先安装EPEL Release,使用其他的repo源,所 ...

  2. Docker+Gogs搭建个人Git服务

    欢迎 经常使用Github的我,Github它功能强大,操作简单,不用FQ,所以大家会使用Github进行代码托管,但是,Github的私仓收费的,而且对于普通个人用户来说,价格也不便宜.很多人搭建自 ...

  3. javaSE基础之 ArrayList的底层简单实现

    最近就是想扒一扒存在硬盘里面的学习资料(突然想到什么),把以前写过的一些东西整理一下分享出来. 这边是ArrayList 的简单实现,当然只实现了部分方法 package com.yck.collec ...

  4. Java虚拟机基础

    Java虚拟机基础 JVM是Java Virtual Machine的缩写.JVM是一个可以将Java字节码转换成机器语言并能被机器(电脑)执行的Java字节码处理引擎.Java字节码是处于Java和 ...

  5. 两个大数相乘-Java

    两个字符串表示两个非常大的数,请设计算法计算这两个大数的乘积,结果用字符串表示.例如S1="7832974972840919321747983209327",S2="19 ...

  6. Ext.Msg.alert添加确定按钮

    Ext.Msg.alert('成功','成功!!', function(btn){ if(btn!=null{//btn=='ok'||btn=='cancel' ... } });

  7. Java基础学习 —— io

    /** 解决数据与数据之间的传输问题. 字节流: 输入字节流: -------| InputStream 所有输入字节流的基类.抽象类. -----------| FileInputStream 读取 ...

  8. 【Java IO流】字节流和字符流详解

    字节流和字符流 对于文件必然有读和写的操作,读和写就对应了输入和输出流,流又分成字节和字符流. 1.从对文件的操作来讲,有读和写的操作——也就是输入和输出. 2.从流的流向来讲,有输入和输出之分. 3 ...

  9. 数据库学习任务三:执行数据库操作命令对象SqlCommand

    数据库应用程序的开发流程一般主要分为以下几个步骤: 创建数据库 使用Connection对象连接数据库 使用Command对象对数据源执行SQL命令并返回数据 使用DataReader和DataSet ...

  10. 结对编程-四则运算生成程序-GUI界面

    201421123118 张中结 201421123098 胡丹丹 a.需求分析 这个程序做成GUI(可以是Windows PC 上的,也可以是Mac.Linux,web,手机上的),成为一个有基本功 ...