[英]How to use properly BigInteger methods in Java?
我正在嘗試使用此方法對數字進行階乘:
public static BigInteger factorial (long n) {
BigInteger result = BigInteger.ONE;
for(BigInteger i = BigInteger.TWO; i.compareTo(BigInteger.valueOf(n)) >= 0; i = i.add(BigInteger.ONE)) {
result = result.multiply(i);
}
return result;
}
我問為什么結果總是保持1(BigInteger.ONE)?
i.compareTo(BigInteger.valueOf(n)) >= 0
是錯誤的,而是使用
i.compareTo(BigInteger.valueOf(n)) <= 0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.