整数:二进制0b 十进制 八进制0 十六进制0x 浮点数:银行业务,关于钱的,Java有个BigDecimal数学工具类,用这个计算。最好完全避免使用浮点数进行比较。因为float 是有限的离散的,它存在一个舍入误差。所以计算结果是一个大约数,只是接近但不等于。 字符:单个字母、数字、汉字,占2个字 ...
分类:
编程语言 时间:
2020-01-21 16:19:18
阅读次数:
80
需求: 这里虚拟一个业务需求,让大家容易理解。假设有一个订单系统,里面的一个功能是根据订单的不同类型作出不同的处理。 1. 常规代码实现 1.1 实体类 import lombok.Data; import java.math.BigDecimal; @Data public class Order ...
分类:
编程语言 时间:
2020-01-18 23:58:07
阅读次数:
169
1.重要意义 1.1.浮点数计算出错 1 public class Main { 2 public static void main(String[] args) { 3 System.out.println(2.0-1.1); 4 } 5 } 1 0.8999999999999999 原因分析:浮 ...
分类:
其他好文 时间:
2020-01-18 19:19:29
阅读次数:
70
1、最简单的操作,验证之后是准确的四舍五入 double payPercent=123.345; System.out.println((double)Math.round(payPercent*100)/100); 输出结果:123.35 2、使用BigDecimal 1、 ROUND_UP:远离 ...
分类:
编程语言 时间:
2020-01-18 12:24:51
阅读次数:
103
整型大数 BigInteger: import java.math.BigInteger; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan=new ...
分类:
其他好文 时间:
2020-01-13 21:36:41
阅读次数:
49
比如 System.out.println(0.14*100); 输出: 14.000000000000002 解决方法: BigDecimal b = new BigDecimal(String.valueOf(0.14)); BigDecimal c = new BigDecimal(Strin ...
分类:
编程语言 时间:
2020-01-09 10:28:11
阅读次数:
412
1.BigDecimal用法详解 一、简介 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。float和double只能用来做科学计算或 ...
分类:
其他好文 时间:
2020-01-04 20:49:17
阅读次数:
96
当基础数据类型长度无法满足需求时可以使用大数类 构造方法接受字符串为参数 1 BigInteger bInt = new BigInteger("123123"); 2 BigDecimal bDouble = new BigDecimal("123123.123123124"); 基础操作(取模使 ...
分类:
编程语言 时间:
2020-01-03 21:11:11
阅读次数:
219
public class DoubleTest { //保留两位小数第三位如果大于4会进一位(四舍五入) double f = 6.23556; /** *使用精确小数BigDecimal */ public void fun1() { BigDecimal bg = new BigDecimal( ...
分类:
其他好文 时间:
2020-01-01 23:53:33
阅读次数:
392
正则表达式 代码如下: 利用BigDecimal的异常 判断字符是否是数字 判断字符是否是字母 ...
分类:
编程语言 时间:
2020-01-01 14:55:31
阅读次数:
92