티스토리 뷰

Development

[Java] java.math.BigInteger 계산

devbible 2012. 5. 8. 16:09

연산관련 소스를 작성할일이 있었는데 사용자로부터 데이터를 받아 계산하는것이였다.

이때 사용한게 BigInteger.

일반 int 나 long 보다 BigInteger를 사용하면 거의 무한적은 자릿수를 표현 및 계산이 가능하다고 한다.

그리고 더 정확하다고 한다.

숫자연산관련해서는 BigInteger를 사용하는게 좋을것같다.

 

 

 import java.math.BigInteger;

public class bigInt {
public static void main(String[] args) {
//BigInteger 객체 생성 MAX값은 없는듯하다.
BigInteger bi = new BigInteger("1000000000000000000000000000000000");
//덧셈(더하기 10)
bi = bi.add(BigInteger.valueOf(10));
System.out.println(bi+ "\n");

//뺄셈(빼기 10)
bi = bi.subtract(BigInteger.valueOf(10));
System.out.println(bi+ "\n");

//곱셈 (곱하기 2)
bi = bi.multiply(BigInteger.valueOf(2));
System.out.println(bi+ "\n");
//나눗셈(나누기 2)
bi = bi.divide(BigInteger.valueOf(2));
System.out.println(bi+ "\n");

}
}

 

BigInteger 의 연산은 모두 함수로 이뤄지며(뭐 물론 쉽게 하려면 상속받아서 따로 클래스를 만들면 되지만)
함수의 인자값은 BigInteger 가 되어야 합니다. 만일 일반 상수를 쓸경우 valueOf() 함수를 써서 넣으면 됩니다. valueOf()의 파라미터는 long 형입니다.

레퍼런스 : http://docs.oracle.com/javase/1.4.2/docs/api/java/math/BigInteger.html

포스팅 : http://uiandwe.tistory.com/682

작성자 : http://uiandwe.tistory.com

 

댓글