JAVA/java 실습

[자바JAVA] 조건문 - switch문 /난수를 발생시켜서 그 시간에 무엇을 할지 출력하기

자바칩 프라푸치노 2020. 9. 24. 07:36

안녕하세요 자바칩 프라푸치노입니다.

오늘은 난수를 발생시켜서 그 시간에 무엇을 해야하는지 확인하는 코드를 만들어보겠습니다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package sec01_exam;
 
public class SwitchEx {
 
    public static void main(String[] args) {
        
        // time의 난수 범위 : 8~11
        int time = (int)(Math.random() * 4+ 8;
        
        switch (time) {
            case 8:
                System.out.println("출근합니다.");
                break;
            case 9:
                System.out.println("회의를 진행합니다.");
                break;
            case 10:
                System.out.println("업무를 봅니다.");
                break;
            case 11:
                System.out.println("외근을 나갑니다..");
                break;
            
            default:
                break;
            }// 만일 break문이 존재하지 않는다면, 아래에서 8이 나오면 case8부터 모두 출력됨. 
 
    }
 
}
 
cs

Math.random메서드는

0.0 <= Math.random < 1.0 의 double값을 랜덤으로 나타내는 것입니다.

그래서 int형으로 형변환을 하고 4를 곱하고 8을 더했다는 말은

8<= 난수 < 12 의 정수를 랜덤으로 발생시키겠다는 말입니다.

 

4를 곱하면 

0.0 <= 난수 < 4.0

8을 더하면 

8.0 <= 난수 < 12.0 

이니까요.

 

케이스들을 보시면

어떤 수가 나왔을때 어떻게 출력을 할 지 나와있습니다.

누를때 마다 이렇게 다른 값이 나옵니다.

회의를 진행합니다가 나왔다는 것은 난수에서 9가 발생되었다는 것이겠지요.

다른 케이스도 똑같이 생각하시면 됩니다.

 

728x90