조건문(if문, switch문)

안녕하세요. 이번에는 조건문에 대해서 배워보겠습니다.

조건문은 크게 if문과 switch문이 있습니다.

if는 우리가 흔히 알고 있는 만약 ~~라면이라는 뜻인데요
자바에서도 동일합니다.

if문


if(조건1) {
 //조건 1일 경우 이곳으로 진입
}else if (조건2) {
 //조건 2일 경우 이곳으로 진입

 }else { 
 //조건 1과 2 모두 아닐 경우 이곳으로 진입
}



만약 조건1이라면 해당 괄호로 진입하고 그게 아니라면 else if 라는 형태로 써줍니다.
최종적으로 마지막에는 else if로 써도되지만 else로 쓰기도합니다.

이론적인거보단 예제를 통해 보는게 빠르겠죠?

주사위 예제로 살펴보겠습니다.

if문



빨간박스로 친 Math.random( ) 부분이 보이시죠?

math는 수에 관한 클래스 로 java.lang에 있습니다. 
이 Math.random( )은 0.0과 1.0 사이의 수를 랜덤으로 출력합니다.
주사위는 1~6 정수만 취급하므로 이에 맞게 식을 변경해줘야합니다.


여기서 소수점을 없애줘야하기 때문에 (int)를 앞에 써줍니다.
즉, int num = (int)(Math.random()*6) +1;
이 부분은 1.0을 포함한 수와 7.0사이의 수에서 정수만 num으로 받아들인다는 뜻입니다.

이제 조건문 if에 대해서 봅시다.
조건문은 사실 너무나 간단합니다.
헷갈리는 부분이 있으시면 다른 예제를 좀 더 찾아보셔도 되구요.

if (num==1){

System.out.println("1번이 나왔습니다.");
}
==을 2번써야 같다는 것을 뜻합니다.
실행을 계속 해보시면 1,2,3,4,5,6이 랜덤하게 나오시는 것을 알 수 있을 것입니다.



swtich문
switch를 버튼으로 생각해봅시다. 전화번호를 누르거나 비밀번호를 입력할 때 우린 항상당 숫자를 직접 입력합니다.
switch도 마찬가지로 해당 값을 우리가 줘야합니다.

비교하기 쉽게 같은 예제인 주사위로 보겠습니다.

switch문

switch는 소괄호 안에 값을 주고 case를 통해 해당 값일 경우 어떻게 실행할 것인지를 적는 조건문입니다.
if문에서 마지막에 else를 쓰는 것처럼 switch문에서는 default를 써줍니다.

Switch문

num을 이전처럼 주사위로 랜덤하게 1~6 숫자를 할당합니다.
그리고 switch(num)으로 값을 주면 case에서 해당 값에 따라 각자 다르게 수행합니다.
break;를 쓰지 않으면 멈추지 않고 계속 아래로 수행합니다.





이제 코드를 보면 어떻게 수행될지 어느정도 보이시죠?
break;를 넣지 않았기에  진입한 순간부터 시작하여 아래로 종료 }를 만날때까지 계속 수행합니다.
8~11정수 값을 랜덤하게 넣습니다.
8을 넣으면 8,9,10,default 전부 수행
9을 넣으면 9,10,default 수행
10을 넣으면 10, default 수행
11을 넣으면 default 수행

마지막으로 같은 식을 넣는 경우 마지막까지 생략을 할 수도 있습니다.


month를 1~12의 정수만 랜덤하게 출력하게합니다.
1, 3, 5, 7, 8, 10, 12는 모두 31일로 같은 문구를 출력해야합니다.
각각에 대해서 따로 넣을 필요 없이 마지막에만 써주면 되겠습니다.



댓글 없음:

Powered by Blogger.