方法一
import java.math.BigInteger;
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
int n=scan.nextInt();
BigInteger bigInteger=BigInteger.valueOf(1);
for (int i=1;i<=n;i++){
String m=String.valueOf(i);
bigInteger=(new BigInteger(m)).multiply(bigInteger);
}
System.out.println(bigInteger);
}
}
重点:
BigInteger
和BigDecimal
作用:处理包含任意长度数字序列的数值,BigInteger
实现任意精度的整数运算,BigDecimal
实现任意精度的浮点数运算,使用静态的valueOf
方法将普通的数值转为大数值:BigInteger BigInteger bigInteger=BigInteger.valueOf(1);
或使用BigInteger bigInteger=new BigInteger("1");
将字符串转换成大数,需要使用add()
方法和multiply()
方法实现大数的四则运算:bigInteger=(new BigInteger(m)).multiply(bigInteger);