From 055e429229ed49ac255441cf9d428f052774e992 Mon Sep 17 00:00:00 2001 From: "bob.guo" Date: Fri, 19 Nov 2021 16:45:51 +0800 Subject: [PATCH] =?UTF-8?q?=E9=99=A4=E6=95=B0=E5=92=8C=E8=A2=AB=E9=99=A4?= =?UTF-8?q?=E6=95=B0=E4=BB=BB=E6=84=8F=E4=B8=80=E4=B8=AA=E4=B8=BA0=20?= =?UTF-8?q?=E4=BC=9A=E6=8A=9B=E5=87=BAException=20in=20thread=20"main"=20j?= =?UTF-8?q?ava.lang.ArithmeticException:=20/=20by=20zero=20=E5=BC=82?= =?UTF-8?q?=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/cn/hutool/core/util/NumberUtil.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/hutool-core/src/main/java/cn/hutool/core/util/NumberUtil.java b/hutool-core/src/main/java/cn/hutool/core/util/NumberUtil.java index 8953e48b0..06de16b94 100644 --- a/hutool-core/src/main/java/cn/hutool/core/util/NumberUtil.java +++ b/hutool-core/src/main/java/cn/hutool/core/util/NumberUtil.java @@ -747,12 +747,19 @@ public class NumberUtil { if (null == v1) { return BigDecimal.ZERO; } + if(v1.compareTo(BigDecimal.ZERO)==0||v2.compareTo(BigDecimal.ZERO)==0){ + return BigDecimal.ZERO; + } if (scale < 0) { scale = -scale; } return v1.divide(v2, scale, roundingMode); } + public static void main(String[] args) { + System.out.println(div(BigDecimal.ZERO,BigDecimal.ZERO)); + } + /** * 补充Math.ceilDiv() JDK8中添加了和Math.floorDiv()但却没有ceilDiv() *