Math.random() 메서드는 0 이상 1 미만의 double형 숫자를 반환함. (0.0000xxx ~ 0.9999xxx)
원하는 정수 범위의 난수 만들기
랜덤 소수(0~0.999...) 생성
Math.random() *숫자 -> 입력한 숫자보다 작은 무수히 많은 소수가 생성됨
예) Math.random() * 11 (0 이상 11 미만 소수)
--> 0.11 * 11 => 1.21
0.385 * 11 => 4.235
0.9382 * 11 => 10.3202
랜덤 정수(0~숫자-1) 생성
(int) Math.random() * 숫자 -> 소수 부분은 자르고 정수 부분만 반환
예) (int) Math.random() * 11 (0~10 사이 정수 반환)
--> 0.11 * 11 => 1.21 -> 1
0.385 * 11 => 4.235 -> 4
0.9382 * 11 => 10.3202 ->10
원하는 범위의 랜덤 정수(최솟값~최댓값) 생성
(int) Math.random() * (최댓값-최솟값+1) + 최솟값
예) 최솟값 1~ 최댓값 10 사이의 값
(int) Math.random() * (10-1+1) +1
최솟값 10 ~ 최댓값 30 사이의 값
(int) Math.random() * (30-10+1) +10
'JAVA' 카테고리의 다른 글
요청 URL 가져오는 메서드들 정리 (0) | 2023.09.28 |
---|---|
[java] 지네릭스-<T extends Fruit>과 <? extends Fruit>의 차이 (0) | 2023.07.14 |
[java] Iterator - hasNext()와 next()의 동작 (0) | 2023.07.08 |
[java] 인스턴스 생성 (0) | 2023.03.02 |
[JAVA] java.util 패키지 - Calendar 클래스 (0) | 2022.04.20 |