Programming Language/Java

조건문 - if문, switch문

Ma_Sand 2022. 2. 22. 09:42
반응형

1. if문

 (1) 단독 if문

   ① 표현법

if(조건식) {
    조건식이 true일 경우 실행될 코드;
}

     → 조건식의 결과가 true일 경우: 중괄호 {} 안에 있는 코드를 실행한다.

     → 조건식의 결과가 false일 경우: 중괄호 {} 안에 있는 코드를 실행하지 않고 건너뛴다.

 

   ② 예시

import java.util.*;

//정수가 양수인지 판별하는 메소드
public class A {
    public void a1() {
        Scanner sc = new Scanner(System.in);
        System.out.println("정수를 입력하시오.> ");
        
        int x = sc.nextInt();
        
        if(num > 0) {   //입력값이 0보다 크면 양수가 출력
            System.out.println("양수입니다.");
        }
    }
}

 

 

 (2) if else문

   ① 표현법

if(조건식) {
    System.out.println("실행될 코드1");  //조건식의 결과값이 true이면 코드1이 실행
} else {
      System.out.println("실행될 코드2");  //조건식의 결과값이 false면 코드2 실행
}

 

   ② 예시

if(num % 2 = 1) {   //조건식이 true이면 홀수 출력
     System.out.println("홀수");
} else {    //조건식이 false이면 짝수 출력
       System.out.println("짝수");   
}

 

 

 (3) if else if문

   ① 표현법

if(조건식1) {    //조건식1의 결과값이 true이면 코드1 실행
      실행될 코드1;
} else if(조건식2) {    //조건식2의 결과값이 true이면 코드2 실행
      실행될 코드2;
} else {     //조건식1, 2가 false이면 코드3 실행
      실행될 코드3;
}

 

   ② 예시

if(x > 0) {     // x가 양수일 때
     System.out.println("양수입니다.");
} else if(x == 0) {     // x가 0일 때
       System.out.println("0입니다.");
} else {      // x가 양수도, 0도 아닐 때
       System.out.println("음수입니다.");
}

 

 

 (4) 중첩 if문

   ① 표현법

if(조건식1) {
    if(조건식2) {
        if(조건식3) {
            실행될 문장;
        }
        else if(조건식4) {
            실행될 문장;
        }
        else {
            실행될 문장;
        }
    }
    else {
       실행될 문장;
    }
    else if(조건식5) {
       실행될 문장;
    }
    else {
       실행될 문장;
    }
}

 

   ② 예시

if(month == 1 || month == 2 || month == 12) {
      season = "겨울";
      if(temperature <= -15) {
            season += "한파경보";
      }
      else if(temperature <= -12) {
            season += "한파주의보";
      }
      else if(month >= 3 && month <= 5) {
            season = "봄";
      }
      else if (month >= 6 && month <=8) {
            season = "여름";
            if(temperature >=35) {
                  season += "폭염경보";
            }
            else if(temperature >= 33) {
                  season += "폭염주의보";
            }
      }
      else if(month >= 9 && month <= 11) {
            season = "가을";
      }
      else {
            season = "해당하는 계절이 없음";
      }
}

 

 

 

2. swtich문

 (1) 특징

   - 조건식 하나로 많은 경우의 수를 처리할 때 사용

   - 이때, 조건식의 결과는 정수나 문자, 문자열로 출력

   - 조건식의 결과값과 일치하는 case문으로 이동하고, default문은 일치하는 case문이 없을 때 수행(else와 같은 기능)

 

 (2) 표현법

switch(아래에 기술할 값들과 동등비교할 대상자) {

case 값1 : 실행할 코드1;   //값1이 true일 때 코드1 실행
break;   //switch문에서 빠져나감.

case 값2 : 실행할 코드2;   //값2가 true일 때 코드2 실행
break;

default : 실행할 코드;   //값1과 2가 모두 false일 때 실행
}

 

 

 (3) 예시

//짝수인지 홀수인지 출력
switch(num) {

case 0 : System.out.println("짝수이다.");
break;

case 1 : System.out.println("홀수이다.");
break;
}
//같은 실행코드가 반복될 때
switch(month) {

case 1 : System.out.println("겨울");
case 2 : System.out.println("겨울");
case 12 : System.out.println("겨울");
break;

case 3 : System.out.println("봄");
case 4 : System.out.println("봄");
case 5 : System.out.println("봄");  
break;
//같은 실행 코드가 반복되면 아래와 같이 생략해도 된다.

case 6 :
case 7 :
case 8 : System.out.println("여름");

case 9 :
case 10 :
case 11 : System.out.println("가을");
break;

//위에 조건문 다 실행한 값이 false이면 default값 출력
default : System.out.println("해당되는 계절이 없습니다.");
}
반응형