ソースを参照

阶乘计算优化

neko 5 年 前
コミット
b06d499279

+ 6 - 0
hutool-core/src/test/java/cn/hutool/core/util/NumberUtilTest.java

@@ -241,10 +241,16 @@ public class NumberUtilTest {
 		long factorial = NumberUtil.factorial(0);
 		Assert.assertEquals(1, factorial);
 
+		Assert.assertEquals(1L, NumberUtil.factorial(1));
+		Assert.assertEquals(1307674368000L, NumberUtil.factorial(15));
+		Assert.assertEquals(2432902008176640000L, NumberUtil.factorial(20));
+
 		factorial = NumberUtil.factorial(5, 0);
 		Assert.assertEquals(120, factorial);
 		factorial = NumberUtil.factorial(5, 1);
 		Assert.assertEquals(120, factorial);
+
+		Assert.assertEquals(2432902008176640000L, NumberUtil.factorial(20, 0));
 	}
 
 	@Test