[Java] Math.random()으로 랜덤숫자 추출

Yeoonnii·2023년 1월 7일
0

Java

목록 보기
13/30
post-thumbnail

Math.random()

Math클래스의 random메서드
0.0 이상 1.0 미만의 임의의 double값을 반환한다
0.0 <= Math.random() < 1.0

Math.random()은 실수의 범위의 랜덤값을 리턴해주는데,
임의의 랜덤값을 실수가 아닌 정수로 받고싶은 경우는 어떻게 해야할까?


랜덤숫자 추출하기

1부터 10사이의 정수의 범위에서 랜덤으로 숫자를 추출해보자

1. 곱하기

Math.random()에 10을 곱해서 범위를 0.0 ~ 10.0으로 변경해준다

0.0 * 10 <= Math.random()* 10 < 1.0* 10
▶ 0.0 <= Math.random()* 10 < 10.0


2. int형으로 변환

int형으로 형변환하여 정수를 리턴하도록 한다

(int) 0.0 <= (int) Math.random() * 10 < (int) 10.0
▶ 0 <= (int) Math.random() * 10 < 10


3. 각 변에 1을 더한다

랜덤으로 리턴될 정수의 범위를 알맞게 변경해준다

0 +1 <= (int) (Math.random()* 10) +1 < 10 +1
▶ 1 <= (int) (Math.random()* 10) +1 < 11


입력코드/출력결과

public static void main(String[] args) {
       int num = 0; // 랜덤으로 출력될 정수를 저장하기 위한 변수
        for( int i=1; i<=10; i++ ){
            num = (int)(Math.random()*10) + 1;

            System.out.println(i+"번째 "+"랜덤숫자는 " + num + "입니다!" );
       }
    }

0개의 댓글