유용한 클래스(6) - BigInteger class

2021. 12. 31. 11:22·자바/유용한 클래스들

1. java.math.BigInteger class

- 정수형 타입인 long으로 표현할 수 있는 값은 10진수로 19자리 정도인데, 이것보다 더 큰 계산을

한다면 BigInteger를 사용하는 것이 좋다.

 

- BigInteger class는 int 배열을 사용해서 값을 다루기 때문에, long 타입보다는 성능면에서는 떨어진다.

 

 

- BigInteger class는 다음과 같은 변수를 가진다.

(1) final int signum

: 부호 1(양수), 0, -1(음수) 셋 중의 하나의 값을 가진다.

 

(2) final int[] mag

: 값(magnitude)

 

( 위 코드에서 볼 수 있듯이, String처럼 불변이며 '2의 보수'의 형태를 취하고 있다. 즉, 같은 mag 값이더라도

signum은 다르다는 것이다. )

 

 

 

- BigInteger의 생성 방법은 여러가지 있는데, 문자열로 숫자를 표현하는 것이 일반적이다.

아래의 코드를 보자.

 

 

 

- BigInteger 또한 비트 연산 메서드를 사용하는 것이 좋은데, 아래의 코드를 보고 이해하자.

 

 

 

 

1-1. BigInteger class을 이해하기 위한 예제(1)

: factorial을 BigInteger로 바꾼 예제이다.

 

 

'자바 > 유용한 클래스들' 카테고리의 다른 글

유용한 클래스(7) - BigDecimal class  (0) 2021.12.31
유용한 클래스(5) - StringTokenizer class  (0) 2021.12.31
유용한 클래스(4) - Scanner class  (0) 2021.12.30
유용한 클래스(3) - 정규식 - regex 패키지  (0) 2021.12.29
유용한 클래스(2) - Random class  (0) 2021.12.29
'자바/유용한 클래스들' 카테고리의 다른 글
  • 유용한 클래스(7) - BigDecimal class
  • 유용한 클래스(5) - StringTokenizer class
  • 유용한 클래스(4) - Scanner class
  • 유용한 클래스(3) - 정규식 - regex 패키지
백_곰
백_곰
  • 백_곰
    친절한 코딩
    백_곰
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 알고리즘 (with JAVA)
        • 기본 알고리즘
        • 완전 탐색
        • 분할 정복 알고리즘
        • 동적 계획법
        • 탐욕법
        • 코딩 테스트 기출 문제
        • 코드트리 조별과제
      • 백준 (with JAVA)
        • 완전 탐색
        • 분할 정복
        • 그 외
      • 자바
        • 개발 환경 구축하기
        • 팁
        • 기본적인 개념
        • 컬렉션 프레임워크
        • 프로세스와 쓰레드
        • 지네릭스
        • 람다식
        • 스트림
        • 입출력 IO
        • 네트워킹
        • 열거형(enums)
        • java.lang 패키지
        • java.time 패키지
        • 유용한 클래스들
        • 형식화 클래스들
      • 안드로이드 with 자바
        • 응용 문제들
        • 자잘한 문제들
        • 오류 보고서
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      제자리 정렬
      map()
      java.time 패키지
      문자 기반 스트림
      유용한 클래스
      TCP 소켓 프로그래밍
      코드트리
      역직렬화
      안정 정렬
      java.lang패키지
      소켓 프로그래밍
      안드로이드 스튜디오
      serializable
      스트림
      Collections Framework
      ServerSocket
      코딩테스트
      file
      다형성
      불안정 정렬
      코딩트리조별과제
      람다식
      InputStream
      알고스팟
      snail
      선택 정렬
      중간연산
      Arrays
      outputstream
      자바 개념
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    백_곰
    유용한 클래스(6) - BigInteger class
    상단으로

    티스토리툴바