From ad782ff83776e5b2cfce4483aff6cd5b182000d4 Mon Sep 17 00:00:00 2001 From: Looly Date: Sat, 22 May 2021 14:40:26 +0800 Subject: [PATCH] fix decimalFormat bug --- CHANGELOG.md | 3 ++- .../src/main/java/cn/hutool/core/util/NumberUtil.java | 2 +- .../src/test/java/cn/hutool/core/util/NumberUtilTest.java | 8 ++++++++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7dd31f45e..dd21c9f8e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ ------------------------------------------------------------------------------------------------------------- -# 5.6.6 (2021-05-18) +# 5.6.6 (2021-05-22) ### 🐣新特性 * 【cron 】 增加时间轮简单实现 @@ -14,6 +14,7 @@ ### 🐞Bug修复 * 【core 】 修复XmlUtil中omitXmlDeclaration参数无效问题(issue#1581@Github) +* 【core 】 修复NumberUtil.decimalFormat参数传错的问题(issue#I3SDS3@Gitee) ------------------------------------------------------------------------------------------------------------- # 5.6.5 (2021-05-08) 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 b04cd9393..ba1504213 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 @@ -1082,7 +1082,7 @@ public class NumberUtil { if(null != roundingMode){ decimalFormat.setRoundingMode(roundingMode); } - return decimalFormat.format(roundingMode); + return decimalFormat.format(value); } /** diff --git a/hutool-core/src/test/java/cn/hutool/core/util/NumberUtilTest.java b/hutool-core/src/test/java/cn/hutool/core/util/NumberUtilTest.java index 6997ce7e3..98460b9b4 100644 --- a/hutool-core/src/test/java/cn/hutool/core/util/NumberUtilTest.java +++ b/hutool-core/src/test/java/cn/hutool/core/util/NumberUtilTest.java @@ -161,6 +161,14 @@ public class NumberUtilTest { Assert.assertEquals("299,792,458", format); } + @Test + public void decimalFormatDoubleTest() { + Double c = 467.8101; + + String format = NumberUtil.decimalFormat("0.00", c); + Assert.assertEquals("467.81", format); + } + @Test public void decimalFormatMoneyTest() { double c = 299792400.543534534;