본문 바로가기

자바/클래스

BigDecimal와 BigInteger

예제)


import java.math.BigDecimal;

import java.math.BigInteger;


public class Test2 {

public static void main(String[] args) {

// 아주 큰 정수

BigInteger a=new BigInteger("123456789123456789");

BigInteger b=new BigInteger("123456789123456789");

// 더하기

BigInteger c=a.add(b);

System.out.println(c);

// 빼기

c=a.subtract(b);

System.out.println(c);

// 곱하기

c=a.multiply(b);

System.out.println(c);

// 나누기

c=a.divide(b);

System.out.println(c);


// a의 b승

c=a.pow(123);

System.out.println(c);

BigDecimal aa=new BigDecimal("123456789.1234567899999");

BigDecimal bb=aa.movePointLeft(3); // 소수점을 3자리 왼쪽이동

BigDecimal cc=aa.add(aa);

System.out.println(cc);

// 반올림 안함

cc=aa.divide(bb, BigDecimal.ROUND_DOWN);

System.out.println(cc);

// 유효자리 5자리

cc=aa.divide(bb, 5,BigDecimal.ROUND_DOWN);

System.out.println(cc);

double dd;

//sin 30

dd=Math.sin(30.0/180*Math.PI); // 라디안

System.out.println(dd);

dd=Math.pow(2, 10);

System.out.println(dd);

// 0~1사이 난수

dd=Math.random();

System.out.println(dd);

}

}


결과)


246913578246913578
0
15241578780673678515622620750190521
1
1804439166801232113048579161036325734079097970159553955252352335045126570787160816571255148003906... // 엄청나게 큰 값이 나옴
246913578.2469135799998
1000.0000000000000
1000.00000
0.49999999999999994
1024.0
0.22654837775520975

'자바 > 클래스' 카테고리의 다른 글

Scanner 클래스  (0) 2013.05.19
SimpleDateFormat  (0) 2013.05.19
Wrapper 클래스  (0) 2013.05.19
StringBuffer 클래스  (0) 2013.05.15
string 클래스  (0) 2013.05.15