hrming
Math클래스의 Random메서드 vs Random 클래스 본문
그동안 난수를 구하기 위해서는 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