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

@@ -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(){
// 连续数字检查