본문 바로가기

Programming/Java

[Java] BigInteger로 for loop (반복문) 적용

반응형

BigInteger는 Integer나 Long 등의 데이터 타입으로 보관할 수 없는 숫자를 담을 수 있습니다.

BigInteger로 표현된 범위를 반복문으로 처리해야 하는 경우가 있습니다.

for문에 BigInteger 범위를 적용하는 방법을 알아보겠습니다.

 

기본적인 BigInteger for문 적용 코드는 다음과 같습니다.

10000000000000000000000000000 ~ 10000000000000000000000000005 범위를 출력하는 코드입니다.

Java의 Long 타입의 최대값(9223372036854775807)보다 훨씬 더 큰 값입니다.

처음 나오는 for문은 일반적으로 마지막 숫자를 포함하지 않는 형식(i < to)입니다.

다음으로 마지막 숫자를 포함하는 for문입니다.

기본적으로 BigInteger::compareTo를 통해 >, <, >=, <=, == 연산자 등과 동일하게 처리할 수 있습니다.

또한 BigInteger에 값을 더하거나 뺄 때는 add()와 subtract()을 사용할 수 있습니다.

subtract()를 활용하면 역방향으로 for문을 실행할 수 있습니다.

세 번째와 네 번째는 각각 첫 번째와 두 번째와 동일한 방식의 역방향을 실행합니다.

결과는 다음과 같이 출력됩니다.

결과 화면

BigInteger로 for문을 실행하려는 경우 위의 코드를 적용하면 됩니다.

반응형