顾乔芝士网

持续更新的前后端开发技术栈

除法运算ArithmeticException: Non-terminating decimal expansion

一、背景

今天在计算库存消耗百分比(消耗的库存/总库存)的时候遇到了一个错误,
java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.

新手注意:Java中使用BigDecimal类时要避免的坑

1、两数相除无限循环小数问题

直接看例子01:

@Test
public void BigNumber_Test () {
    BigDecimal bd = new BigDecimal("10");
    BigDecimal divNum = new BigDecimal("3");
    // 除法遇到除不尽时,这种写法会抛出异常ArithmeticException
    BigDecimal bigDecimal = bd.divide(divNum); // NG java.lang.ArithmeticException
    System.out.println(bd.divide(divNum, 2)); // OK
    System.out.println(bd.divide(divNum, 2, BigDecimal.ROUND_UP)); // OK
    System.out.println(bd.divide(divNum, 2, BigDecimal.ROUND_DOWN)); // OK
    System.out.println(bd.divide(divNum, 2, BigDecimal.ROUND_CEILING)); // OK
    System.out.println(bd.divide(divNum, 2, BigDecimal.ROUND_FLOOR)); // OK
    System.out.println(bd.divide(divNum, 2, BigDecimal.ROUND_HALF_UP)); // OK
    System.out.println(bd.divide(divNum, 2, BigDecimal.ROUND_HALF_EVEN)); // OK
    System.out.println(bd.divide(new BigDecimal("4"), 2, BigDecimal.ROUND_UNNECESSARY)); // OK
}

Java BigDecimal类型的 加减乘除运算和比较

加法:add 减法:subtract 乘法:multiply 除法:divide

BigDecimal bd1 = new BigDecimal("15");

BigDecimal bd2 = new BigDecimal("20");

BigDecimal bd3;

BigDecimal 详解

BigDecimal 详解

《阿里巴巴 Java 开发手册》中提到:“为了避免精度丢失,可以使用 BigDecimal 来进行浮点数的运算”。

Spring Boot 实例:集成 jBPM 实现请假申请流程及API介绍

引言

jBPM(Java Business Process Management)是一个开源的业务流程管理系统,它提供了一整套工具和服务来帮助开发者构建流程驱动的应用程序。本文将介绍如何使用 Spring Boot 和 jBPM 构建一个简单的请假申请流程,并详细介绍 jBPM 提供的一些核心 API 接口。

web开发源代码案例3-css样式


使用了CSS中类选择器,之前学习的是以结构为主,现在学习CSS主要的就是给结构做一套衣裳,让网页展示出来的效果更好看,更符合我们的观看,所以学习CSS是很重要的一门功课。网页做得好不好看,就看CSS学得怎么样。

Dify工具使用全场景:dify-web修改编译指南(源码解读篇·第1期)

我的场景

最近一直在研究dify怎么用,怎么用好,要想研究深了,还是得看源码,首先就是要把界面改改,当前的界面太素了,不了解web源码,没法改。所以静下来看了看源码,发现也不难,正好给大家也分享一下修改过程 。

下载源码

CSS实现的阴影的3D立体文字动画网页源码

大家好,今天给大家介绍一款,炫酷的阴影的3D立体文字动画网页源码(图1)。送给大家哦,获取方式在本文末尾。

由两组文字构成,都有阴影,加上左右晃动,3D效果很明显(图2)

响应式页面,支持各种分辨率(图3)

代码完整,需要的朋友可以下载学习(图4)

方便、高效、实用,基于 JAVA WEB 的开源问卷表单系统源码分享

一款方便、高效、实用的调研问卷系统,一款基于 JAVA WEB 的开源问卷表单系统。关注转发之后私信回复【源码】即可免费获取到!

安装

因为DWSurvey是基于JAVA WEB实现,所以安装与一般的JAVA WEB程序无异,配置好数据库地址就可以正常使用。

安装说明

如何在浏览器账中查看网页的HTML源代码?

浏览html网页,查看其源代码,可以帮助我们了解该版网页的信息以及架构,每个浏览器都是允许用户查看他们访问的任何网页的HTML源代码的。以下编程狮小师妹就介绍几个常见浏览器的查看网页 HTML 源代码的方法。

谷歌浏览器 Google Chrome

仅查看源代码

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言