Math.random( ) 메소드
1. 0.0과 1.0 사이에 속하는 double타입의 난수 하나를 리턴한다
2. 이때 0.0은 범위에 포함되고 1.0은 포함되지않는다.
ex) 주사위를 굴려서 나올 수 있는 1~10 중 하나의 수를 무작위로 뽑아서 출력해보기!
- 난수를 뽑아야 하므로 Math.random( ) 메소드를 이용해보기
0.0 <= Math.random() < 1.0
0.0 * 10 <= Math.random() * 10 < 1.0 *10
1~10 사이의 정수 중에서 하나의 정수를 얻기 위해 각 변에 10을 곱하여 하나의 double 타입의 값을 얻을 수 있도록 한다.
0.0 * 10 <= (int) Math.random() * 10 < 1.0 *10
double 형태를 int 타입으로 강제 타입 변환을 한다.
0 + 1 <= (int)Math.random()*10 +1 < 10+1
각 변에 1을 더하여 1~10 사이의 정수 중 하나의 정수를 얻게 된다.
결론
int num = (int)(Math.random() * n) + start;
start부터 시작하는 n개의 정수 중에서 임의의 정수 하나를 얻음
int num = (int)Math.random() * 10) + 1;
1부터 10까지의 정수 중 (무작위로) 하나의 정수를 얻음
'Java' 카테고리의 다른 글
상속 (inheritance) (0) | 2024.03.17 |
---|---|
JAVA 이차원 배열 (0) | 2023.07.26 |
배열 (0) | 2023.07.12 |