【JavaSE笔记】Java常用类及其方法(六)_BigDecimal
来源:互联网 发布:中国电视台 知乎 编辑:程序博客网 时间:2024/05/01 18:54
本期知识点:
BigDecimal类的常用方法
BigDecimal类的常用方法
类BigDecimal
不可变的、任意精度的有符号十进制数。BigDecimal 由任意精度的整数非标度值 和 32 位的整数标度 (scale) 组成。如果为零或正数,则标度是小数点后的位数。如果为负数,则将该数的非标度值乘以 10 的负 scale 次幂。因此,BigDecimal 表示的数值是 (unscaledValue × 10-scale)。
运算的时候,float类型和double类型(浮点类型),会丢失数据,不精确,大部分时候数据存储和整数类型存储不一致,属于有效位数字不精确
java提供了一个类:BigDecimal
作用:不可变的、任意精度的有符号十进制数,让运算更精确!
1. BigDeciaml构造方法
public BigDecimal(String val)
2. BigDecimal常用的方法
public BigDecimal add(BigDecimal augend)加
public BigDecimal subtract(BigDecimal subtrahend)减
public BigDecimal multiply(BigDecimal multiplicand)乘
public BigDecimal divide(BigDecimal divisor)除
public BigDecimal divide(BigDecimal divisor, int scale,int roundingMode)
divisor:商scale:有几位小数roundingMode:以什么样的模式舍入,其标度为指定标度。
public class BigDecimal的构造方法 {public static void main(String[] args) {BigDecimal a = new BigDecimal("0.09");BigDecimal b = new BigDecimal("0.01");System.out.println("a+b="+a.add(b));System.out.println("——————————");BigDecimal c = new BigDecimal("1.0");BigDecimal d = new BigDecimal("0.32");System.out.println("a-b="+c.subtract(d));System.out.println("——————————");BigDecimal e = new BigDecimal("1.015");BigDecimal f = new BigDecimal("100");System.out.println("e*f="+e.multiply(f));System.out.println("——————————");BigDecimal g = new BigDecimal("1.301");BigDecimal h = new BigDecimal("100");System.out.println("g/h="+g.divide(f));System.out.println("——————————");System.out.println("g/h 保留3位小数 以过半模式舍入"+g.divide(f, 3 , BigDecimal.ROUND_HALF_UP));System.out.println("g/h 保留4位小数 以过半模式舍入"+g.divide(f, 4 , BigDecimal.ROUND_HALF_UP));}}
阅读全文
0 0
- 【JavaSE笔记】Java常用类及其方法(六)_BigDecimal
- 【我的Java笔记】常用类_BigDecimal
- 【JavaSE笔记】Java常用类及其方法(一)_Object
- 【JavaSE笔记】Java常用类及其方法(二)_String
- 【JavaSE笔记】Java常用类及其方法(三)_StringBuffer
- 【JavaSE笔记】Java常用类及其方法(四)_Integer
- 【JavaSE笔记】Java常用类及其方法(五)_Character
- 【JavaSE笔记】Java常用类及其方法(七)_Date
- 【JavaSE笔记】Java常用类及其方法(八)_System
- 【JavaSE笔记】Java常用类及其方法(九)_Pattern
- 【JavaSE笔记】Java常用类及其方法(十)_Math
- Java类及其常用方法(六)BigDecimal
- Java基础学习笔记:(六)String常用方法
- java学习笔记(六)——String类的常用方法
- Java常用类及其常用方法
- java中常用类及其常用方法
- javase--3常用类(java.lang)
- Java常用类及其方法(一)Object
- [九大内置对象]session、application、pageContext
- C++拷贝构造函数详解
- Guava学习笔记:Preconditions优雅的检验参数
- 一个表单小应用
- 入库数据中文乱码问题
- 【JavaSE笔记】Java常用类及其方法(六)_BigDecimal
- visual studio 无法打开WinSock2.h报错
- [LeetCode]111. Minimum Depth of Binary Tree
- Android monkey 使用及日志分析
- 介绍一点怎么样在网页建设中用到的非常实用方法
- Linux的 sort,uniq,cut,wc命令详解
- Revit API 之 如何查找材质属性所对应的中文名称
- C# http请求 + json序列化反序列化
- Java 8 笔记