JAVA/java 이론

[자바JAVA] 조건문과 난수 발생 Math.random()

자바칩 프라푸치노 2020. 9. 21. 07:42

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

이번에는 조건문에 대해서 알아보겠습니다.

 

자바에서는 조건문이 if문과 switch문이있습니다.

모든 switch문은 if문으로 바꿀 수 있는데요 

if문을 switch문으로 모두 바꿀 수 있는 것은 아닙니다.

 

1. if문

if문의 종류에는 if문, if - else 문 , if - else if - else문이 있습니다.

 

if ( 조건식) {

조건식이 true일때 실행되는 코드

}

 

이렇게 작성을 합니다.

조건식 안에는 true나 false가 들어가야합니다.

 

if(조건식){

}else{

}

 

if-else문은

if안의 조건식이 맞으면 그 안의 코드를 실행하고,

아닌 경우에는 모두 else에 있는 코드를 실행합니다.

모아니면 도일때 사용하는 조건문입니다.

 

if(조건식){

}else if(조건식){

}else {

}

 

if-else if - else문은

조건식 중에서 맞는 조건에 들어가서 그 코드를 실행하라 이말입니다.

else if는 얼마든지 많이 쓸 수 있구요

else에는 조건식이 들어가지 않습니다.

위의 케이스에 들어가지 않는 모든 케이스를 else로 쓰기 때문입니다.

 

if문의 중첩에는 제한이 없습니다.

if문안에 또 if문이 들어갈 수 있다는 소리죠.

하지만 보통 2번으로 권장합니다.

if문이 너무 많으면 알아보기가 어렵기 때문입니다.

 

2. switch문

 

switch문은 if문과 다르게 조건식의 결과가

int범위 이하의 정수, 또는 String이 가능합니다.

예를 들어 if문에서는 조건식이

 

int num = 10;

if(num==10){

}

이렇게 true 아니면 false의 값을 가질 수 있었다면 

switch문에서는 

switch(num) 이렇게 쓴다는 것이지요.

그리고 나서 

switch(num) {

case 1:

 

break;

 

case 10:

break;

 

default :

break;

 

}

 

요런식으로 씁니다.

int 형 변수 num 이 1의 값을 가질때 case1을 실행해라

num이 10의 값을 가질 때 case 10을 실행해라 이말이구요

 

break;문을 만날때까지 실행하기 때문에 break;문이 없다면 

맞는 케이스부터 break있을때까지 쭈욱 다 실행합니다.

그래서 한케이스만 출력하고 싶다면 case마다 break;를 써주어야겠죠.

 

default는 있어도 되고 없어도 됩니다.

케이스들에 아무것도 안걸리면 default를 출력해라 이뜻입니다.

 

switch문도 중첩 횟수에는 제한이 없지만 많이 쓰면 헷갈리니까 안좋습니다.

 

if문과 switch문의 예시입니다.

 

3. Math.random()

 

난수를 발생시키는 함수인데요.

앞으로 예제에서 많이 사용될 예정입니다.

이것은 

0.0<= Math.random() < 1.0 

이 범위의 double값을 가지는 난수를 발생시키는데요

여기서 지지고 볶아서 범위를 정해주시면 됩니다.

가령 0~ 10까지의 난수를 발생시켜라 라고한다면

 

Math.random()에 11을 곱해주고, int형으로 형변환을 해주면 되겠죠.

11을 곱하면 범위가

0.0<= Math.random() * 11 < 11.0 이되고

int형으로 바뀌면

0<= Math.random() * 11 < 11 이렇게 됩니다.

1부터 10까지라 하면 10을 곱하고 1을 더해주면 되겠네요.

 

오늘은 조건문에 대해서 알아보았습니다.

다음 포스팅에서는 반복문에 대해 알아보겠습니다.

*^^* 감사합니다.

728x90