hrming

Math클래스의 Random메서드 vs Random 클래스 본문

카테고리 없음

Math클래스의 Random메서드 vs Random 클래스

hrming 2022. 8. 21. 14:43

그동안 난수를 구하기 위해서는 Math.random()과 같이 Math클래스의 random()메서드를 사용해 왔었다.

난수는 Math.random()뿐만 아니라 Random클래스를 활용해서 구할 수도 있으며, 차이점은 아래와 같다.

 

 

Math.random() Random
0.0 이상 1미만의 double난수를 구함.
-> 정수형으로 출력하고 싶을 경우, 형변환 및 가공*이 필요함.
boolean, int, long, folat, double 난수를 얻을 수 있음.
종자값(seed)이 현재 시간으로 고정.
-> 실행시킬 때마다 다른 숫자가 출력
아래와 같이, 종자값(seed)을 설정할 수 있음.
ran.setSeed(10); 
-> ()안에 seed값을 넣어주면 실행할 때마다 같은 패턴으로 랜던값이 출력됨.
1~10 사이의 난수를 구하기 위해서는 아래와 같이 가공*이 필요
int rand
rand = (int)(Math.random() * 10 ) + 1 
Random rand = new Random();
rand.nextInt(n)의 경우, 0~ n-1 범위에서 난수를 구함.

 

참고:

https://todayscoding.tistory.com/20

 

[JAVA] 난수생성 Math.random() vs Random

이전에 난수에 대한 개념과 Seed에 대한 내용을 알아보았다. 이번에는 실제로 JAVA에서 사용되는 대표적인 난수 생성 방법인 Random클래스와 Math 클래스의 random()메소드에 대해 알아보자. 두 가지의

todayscoding.tistory.com

 

Comments