This commit is contained in:
Looly 2021-07-26 18:43:46 +08:00
parent 49e63dd424
commit 56d4a849f4
3 changed files with 19 additions and 1 deletions

View File

@ -23,6 +23,7 @@
* 【core 】 修复FileTypeUtil判断wps修改过的xlsx误判为jar的问题pr#380@Gitee
* 【core 】 修复Sftp.isDir异常bugpr#378@Gitee
* 【core 】 修复BeanUtil.copyProperties集合元素复制成功读取失败的问题issue#I41WKP@Gitee
* 【core 】 修复NumberChineseFormatter.chineseToNumber十位数错误issue#1726@Gitee
-------------------------------------------------------------------------------------------------------------

View File

@ -249,7 +249,14 @@ public class NumberChineseFormatter {
section = 0;
} else {
// 非节单位和单位前的单数字组合为值
section += (number * unit.value);
int unitNumber = number;
if(0 == number && 0 == i){
// issue#1726对于单位开头的数组默认赋予1
// 十二 -> 一十二
// 百二 -> 一百二
unitNumber = 1;
}
section += (unitNumber * unit.value);
}
number = 0;
}

View File

@ -116,6 +116,16 @@ public class NumberChineseFormatterTest {
Assert.assertEquals(22010, NumberChineseFormatter.chineseToNumber("两万二零一十"));
}
@Test
public void chineseToNumberTest3(){
// issue#1726对于单位开头的数组默认赋予1
// 十二 -> 一十二
// 百二 -> 一百二
Assert.assertEquals(12, NumberChineseFormatter.chineseToNumber("十二"));
Assert.assertEquals(120, NumberChineseFormatter.chineseToNumber("百二"));
Assert.assertEquals(1300, NumberChineseFormatter.chineseToNumber("千三"));
}
@Test(expected = IllegalArgumentException.class)
public void badNumberTest(){
// 连续数字检查