본문 바로가기
java/개념

Math 클래스

by unhyepnhj 2024. 6. 7.

Math 클래스

- java.lang.Math

- 기본적인 산술 연산 제공

- 모든 멤버 메소드는 static 타입이므로 클래스 이름으로 바로 사용

double d = Math.random();
double pi - Math.PI;	//원주율

 

난수 발생

 

1. Math 클래스의 static double random() 메소드 사용

- 0.0 이상 1.0 미만 임의의 double 값을 반환

for(int x=0; x<10; x++){
	int n = (int)(Math.random()*100+1);	//n은 1에서 100 사이의 랜덤 정수
    System.out.println(n);
}

- 0에서 100사이의 난수 10개를 발생시키는 코드

- Matn.random()*100 은 0~99.99 사이의 실수 리턴

- Math.random()*100+1은 1.0~100.99 사이의 실수 리턴

- (int)(Math.random()*100+1)은 강제 형변환을 통해 1~100의 정수 값 리턴

 

2. java.util.Random 클래스 사용

Random r = new Random();
int n = r.nextInt();	//음수, 양수, 0을 포함하여 자바의 정수 범위(-2^31~2~31-1)의 난수 발생
int m = r.nextInt(100):	//0 이상 99 이하의 정수 난수 발생

https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Random.html

 

Random (Java SE 21 & JDK 21)

All Implemented Interfaces: Serializable, RandomGenerator Direct Known Subclasses: SecureRandom, ThreadLocalRandom An instance of this class is used to generate a stream of pseudorandom numbers; its period is only 248. The class uses a 48-bit seed, which i

docs.oracle.com


예제 6-10 Math 클래스의 활용 예

Random 클래스 사용
Math.random() 사용

'java > 개념' 카테고리의 다른 글

컬렉션과 제네릭  (0) 2024.06.08
Calendar 클래스  (0) 2024.06.07
StringTokenizer 클래스  (0) 2024.06.07
StringBuffer 클래스  (0) 2024.06.07
String 클래스  (0) 2024.06.07