Java

BigInteger

it's woo 2021. 11. 3. 00:28

BigInteger는 long이상의 크기의 숫자를 다룰 때 주로 사용한다.

여러 방식으로 객체를 생성할 수 있지만 문제를 풀 때 주로 사용하는 방법으로 문자열만 사용하여 만들어보자

BigInteger big = new BigInteger("0");

문자열을 사용하여 무한대 범위의 수를 다룰 수 있다.

 

기본 연산을 알아보자

BigInteger big1 = new BigInteger("100");
BigInteger big2 = new BigInteger("100");
BigInteger big3;
		
big3=big1.add(big2);
big3=big1.subtract(big2);
big3=big1.divide(big2);
big3=big1.multiply(big2);

연산을 하여 결과를 리턴해주기 때문에 저장할 BigInteger를 만들자

위의 연산 이외에도 나머지, 제곱, 제곱근 등 많은 연산을 할 수 있다.

 

마지막으로 비교를 알아보자.

BigInteger big1 = new BigInteger("100");
BigInteger big2 = new BigInteger("100");
		
int ans;
if(big1.compareTo(big2)==0)
	ans=0;
else if(big1.compareTo(big2)==1)
	ans=1;
else if(big1.compareTo(big2)==-1)
	ans=-1;

일반적인 부등호를 사용하지 않고 compareTo 메서드를 사용한다.

같으면 0, 비교대상보다 크면 1, 비교대상보다 작으면 -1을 리턴한다.