我知道它是溢出的,但事情是20是相对较小的数字,这不应该发生,对吗?有没有更好的方法来找到大数的阶乘,比如1000,而不会得到这个奇怪的结果?
public class RecursiveFunctionsExamples {
public int factorial(Integer n)
{
Integer res;
if(n == 0){
res = 1;
}else{
res = n * factorial(n-1);
}
return res;
}
public static void main(String[] args) {
System.out.println(new RecursiveFunctionsExamples().factorial(20));
}
}
https://stackoverflow.com/questions/52468313
复制相似问题