자바에서 BigInteger는 어떻게 쓰나요?


BigInteger sum = BigInteger.valueOf(0);
for(int i = 2; i < 5000; i++) {
    if (isPrim(i)) {
        sum.add(BigInteger.valueOf(i));
    }
}

이렇게 써봤는데요. sum의 값이 항상 0이나옵니다. 뭐가 잘못된 건가요?

  • 2016년 02월 23일에 작성됨

조회수 175


1 답변


좋아요
0
싫어요
채택취소하기

BigInteger는 immutable형이라 값이 안바뀝니다. 그러므로 sum 값이 안변합니다. add메소드에서 sum의 값을 재할당해주는 방식으로 해야합니다.

sum = sum.add(BigInteger.valueOf(i));

이런식으로 말이죠.

  • 2016년 02월 23일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close