머리말
BigInteger
Java의 클래스는 고정된 범위 제한 없이 모든 크기의 정수를 나타낼 수 있습니다. 내부 배열을 사용하여 자릿수를 정수로 저장하고 산술 및 기타 연산을 수행하는 다양한 방법을 제공합니다.
BigInteger
클래스의 크기는 사용 가능한 메모리에 의해서만 제한됩니다. long
이는 유형의 범위를 훨씬 넘어서는 매우 큰 정수를 나타낼 수 있습니다 .
BigInteger 자동 증가
Java에는 long
. long
정수를 나타내는 Java의 가장 큰 데이터 유형이며 범위는 -9,223,372,036,854,775,808
입니다 9,223,372,036,854,775,807
.
더 큰 정수를 처리해야 하는 경우 java.math.BigInteger
클래스를 사용할 수 있습니다. BigInteger
이 클래스는 모든 크기의 정수를 지원하며 증분 연산을 수행할 수 있습니다.
BigInteger
다음은 다음을 사용하여 증분 작업을 수행하는 방법을 보여주는 샘플 코드입니다 .
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
BigInteger bigInteger = new BigInteger("9223372036854775808"); // 初始化一个大整数
bigInteger = bigInteger.add(BigInteger.ONE); // 自增操作
System.out.println(bigInteger); // 输出结果
}
}
이 예에서는 먼저 BigInteger
생성자를 사용하여 큰 정수를 초기화합니다. 그런 다음 메서드를 사용하여 원래 값에 1을 add()
더하는 증분 작업을 수행합니다 . BigInteger.ONE
마지막으로 증분 후 결과를 인쇄합니다.
출력은 다음과 같습니다
9223372036854775809
불변 클래스 이므로 BigInteger
증분 작업이 수행될 때마다 새 BigInteger
객체가 반환됩니다. 따라서 증가된 값을 저장하려면 결과를 원래 변수에 다시 할당해야 합니다.
BigInteger를 문자열로 변환
BigInteger
유형의 값을 String
저장을 위한 유형 으로 변환 하려는 경우 toString()
메소드를 사용할 수 있습니다. 다음은 샘플 코드입니다.
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
BigInteger bigInteger = new BigInteger("9223372036854775808"); // 初始化一个大整数
bigInteger = bigInteger.add(BigInteger.ONE); // 自增操作
String result = bigInteger.toString(); // 转换为String类型
System.out.println(result); // 输出结果
}
}
이 예에서는 toString()
메소드를 사용하여 BigInteger
유형의 값을 유형으로 변환 하고 그 결과를 변수 String
에 저장합니다 . 그런 다음 값을 result
인쇄하십시오 .result
출력은 다음과 같습니다
9223372036854775809
이제 result
데이터베이스, 파일 등 필요한 곳에 문자열 값을 변수에 저장할 수 있습니다.
BigInteger 계승
BigInteger
Java의 클래스는 고정된 범위 제한 없이 모든 크기의 정수를 나타낼 수 있습니다. 내부 배열을 사용하여 자릿수를 정수로 저장하고 산술 및 기타 연산을 수행하는 다양한 방법을 제공합니다.
BigInteger
클래스의 크기는 사용 가능한 메모리에 의해서만 제한됩니다. long
이는 유형의 범위를 훨씬 넘어서는 매우 큰 정수를 나타낼 수 있습니다 . BigInteger
계승 계산, 지수 연산 등과 같이 long
해당 유형의 범위를 초과하는 큰 수의 연산을 수행하는 데 사용할 수 있습니다 .
BigInteger
다음은 매우 큰 계승 계산 의 사용을 보여주는 샘플 코드입니다 .
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
int n = 1000; // 计算1000的阶乘
BigInteger factorial = BigInteger.ONE;
for (int i = 1; i <= n; i++) {
factorial = factorial.multiply(BigInteger.valueOf(i));
}
System.out.println(factorial);
}
}
이 예에서는 BigInteger
1000의 계승값이 를 사용하여 계산됩니다. BigInteger.ONE
1을 나타내는 multiply()
메서드는 곱셈 연산을 수행하는 데 사용됩니다.