새소식

언어/자바(JAVA)

자바(java) 큰 정수 입력 받기 :: BigInteger 선언, 덧셈, 뺄셈, 곱셈, 나눗셈 정리

  • -

안녕하세요 호호만두에요

이번에는 자바에서 큰 정수를 입력받을 수 있는 BIgInteger에 대해서 알아볼게요


BigInteger가 필요한 경우

알고리즘 문제를 풀다 보면 가끔씩 큰 수를 이용해야 할 경우가 있어요

왜냐하면 int형의 최대 범위는 21억 정도

그래서 long형을 사용하면 920경 정도...

보통 long형으로도 충분하지만

그 보다 더 큰 수를 필요로 할 경우가 있어요. 예를 들어 피보나치 수나 팩토리얄을 구할 경우!!

그럴 때 자바에서 편하게 구할 수 있게 해주는게 BigInteger class 입니다

이는 java.math.BigInteger 를 import하여 사용할 수 있어요


BigInteger 선언과 연산

  1. BigInteger 선언

    import java.math.BigInteger;
    BigInteger big = new BigInteger("123456789012345678901234567890");
    BigInteger big2 = new BigInteger("12345");
  2. BIgInteger 덧셈

    import java.math.BigInteger;
    BigInteger big3 = big.add(big2);
  3. BigInteger 뺄셈

    import java.math.BigInteger;
    BigInteger big4 = big.subtract(big2);
  4. BigInteger 곱셈

    import java.math.BigInteger;
    BigInteger big5 = big.multiply(big2);
    BigInteger big5 = big.multiply(BigInteger.valueOf(2));    // int형을 넣으면 안됨
  5. BigInteger 나눗셈

    import java.math.BigInteger;
    BigInteger big6 = big.divide(big2);
  6. BigInteger 상수

    import java.math.BigInteger;
    BigInteger zero = BigInteger.Zero; // BigInteger type 0
    BigInteger one = BigInteger.One;    // BigInteger type 1
  7. BigInteger type 변환

    import java.math.BigInteger;
    BigInteger trans = BigInteger.valueOf(9000000000);

이렇게 자바 BIgInteger 사용법에 대해서 알아보았어요
BigInteger 의 덧셈, 뺄셈, 곱셈, 나눗셈까지!!!

덧셈 가끔 어떻게 헷갈려서 찾아보고 했는데 이제 이렇게 정리했던 안까먹을 것 같아요!!

BigInteger 예시 코드

10000번째 피보나치 수 구하기

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.