백준문제를 풀면서 int, long 보다 더 큰 범위의 수를 구하는 문제를 접하면서 찾은 방식이다.
우선 BigInteger를 아래와 같이 선언한다.
import java.math.BigInteger;
BigInteger bi = new BigInteger("123");
사칙연산은 일반적인 연산과 다르게 내장 메서드를 이용해야 한다.
BigInteger bi1 = new BigInteger("10");
BigInteger bi2 = new BigInteger("100");
System.out.println(bi1.add(bi2));//덧셈
System.out.println(bi1.subtract(bi2));//뺄셈
System.out.println(bi1.multiply(bi2));//곱셈
System.out.println(bi1.divide(bi2));//나눗셈
System.out.println(bi1.remainder(bi2));//모듈러 연산
이외에도 추가적인 연산은 아래와 같다.
BigInteger[] bi = new BigInteger[5];
bi[0] = BigInteger.ONE;
bi[0] = BigInteger.ZERO;
bi[0] = BigInteger.TEN;
더 많은 정보를 찾으려면 https://docs.oracle.com/javase/6/docs/api/java/math/BigInteger.html 를 확인하길 바란다.
참고
https://blog.naver.com/sjl9524/222453468231
자바 BigInteger
알고리즘 문제를 풀다보면 int형에서 오버플로우가 나서 long형으로 바꾸는 경우가 종종 있는데 long형에서...
blog.naver.com
'JAVA' 카테고리의 다른 글
자바기본개념 - 자바가상머신 및 가비지 컬랙션 (0) | 2021.10.22 |
---|---|
자바 핵심 기본 내용 (0) | 2021.10.17 |
java - Priority Queue(우선순위 큐) (0) | 2021.10.05 |
JAVA - Class 객체의 ArrayList 다중 정렬 (0) | 2021.09.13 |
JAVA 스트림(Stream) (0) | 2021.07.01 |