반응형

제어문

  • 프로그램을 하는데 있어서, 원하는 결과를 얻기 위해서 프로그램의 흐름을 제어하기 위하여 사용하는 명령문

 

조건문

조건문은 주어진 조건식의 결과에 따라 별도의 명령을 수행하도록 제어하는 명령문

if 조건문 예시 (1)
if 조건문 (1) 실행 결과

 

if 조건문 예시 (2)
if 조건문 (2) 실행 결과

 

if-else 조건문 예시
if-else 조건문 실행 결과

 

if-else if-else 조건문 예시
if-else if-else 조건문 실행결과

 

조건문 종류 정리

 


//if 조건문을 이용한 월 별 일수 확인
import java.util.Scanner;

public class Month {
    public static void main (String[] args) {
        //1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
        //31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31

        Scanner scanner = new Scanner(System.in);

        int month = scanner.nextInt();
        int day = 0;

        if (month == 1) {
            day = 31;
        } else if (month == 2) {
            day = 28;
        } else if (month == 3) {
            day = 31;
        } else if (month == 4) {
            day = 30;
        } else if (month == 5) {
            day = 31;
        } else if (month == 6) {
            day = 30;
        } else if (month == 7) {
            day = 31;
        } else if (month == 8) {
            day = 31;
        } else if (month == 9) {
            day = 30;
        } else if (month == 10) {
            day = 31;
        } else if (month == 11) {
            day = 30;
        } else if (month == 12) {
            day = 31;
        } else {
            System.out.println("month 값이 유효하지 않습니다.");
        }

        System.out.println("day : " + day);
    }
}

스위치문

switch (exp)

  • 연산식의 결과 값에 따라 여러 개의 실행 경로 중 하나를 실행
  • 표현식 exp 결과 값 중에서 case 값과 일치하는 내부 문장을 실행

exp

  • 정수형 값이 위치함
  • 열거형
  • 문자열이 위치할 수 있음

break문

  • 조건에 값을 실행한 후 break를 통해서 swith문 종료
  • break문이 없는 경우 계속 실행

//swith 문을 이용한 월 별 일수 확인
import java.util.Scanner;

public class Month {
    public static void main (String[] args) {
        //1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
        //31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31

        Scanner scanner = new Scanner(System.in);

        int month = scanner.nextInt();
        int day = 0;

        switch (month) {
            case 1:
                day = 31;
                break;
 
            case 2:
                day = 28;
                break;
 
            case 3:
                day = 31;
                break;
 
            case 4:
                day = 30;
                break;
 
            case 5:
                day = 31;
                break;
 
            case 6:
                day = 30;
                break;
 
            case 7:
            case 8:
                day = 31;
                break;
 
            case 9:
                day = 30;
                break;
 
            case 10:
                day = 31;
                break;
 
            case 11:
                day = 30;
                break;
 
            case 12:
                day = 31;
                break;
 
            default:
                System.out.println("month 값이 유효하지 않습니다.");
        }
        System.out.println("day : " + day);
    }
}

 
//swith 문을 이용한 월 별 일수 확인 - 같은 값끼리 묶어줌
import java.util.Scanner;

public class Month {
    public static void main (String[] args) {
        //1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
        //31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31

        Scanner scanner = new Scanner(System.in);

        int month = scanner.nextInt();
        int day = 0;

        switch (month) {
            case 1:
            case 3:
            case 5:
            case 7:
            case 8:
            case 10:
            case 12:
                day = 31;
                break;

            case 2:
                day = 28;
                break;

            case 4:
            case 6:
            case 9:
            case 11:
                day = 30;
                break;

            default:
                System.out.println("month 값이 유효하지 않습니다.");
        }
        System.out.println("day : " + day);
    }
}

 

반복문

//for문
for (초기화; 조건 ; 스텝) {
    반복문;
}

//foreach문
for (데이터형; 콜렉션) {
}

//while문
while (조건) {
}

//do while문
do {
} while (조건);

//for문 - 구구단 출력
import java.util.Scanner;

public class MultiplicationTable {
    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        int table = scanner.nextInt();

        for (int i = 1; i <= 9; i++) {
            System.out.println(table +" X " + i + " = " + (table * i));
        }
    }
}

//while문 - 구구단 출력
import java.util.Scanner;

public class MultiplicationTable {
    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        int table = scanner.nextInt();
 
        int i = 1;

        while (i <= 9) {
            System.out.println(table +" X " + i + " = " + (table * i));
            i++;
        }
    }
}

//do while문 - 구구단 출력
import java.util.Scanner;

public class MultiplicationTable {
    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        int table = scanner.nextInt();
 
        int i = 1;

        do {
            System.out.println(table +" X " + i + " = " + (table * i));
            i++;
        } while (i <= 9);
    }
}

for문과 foreach문 예시
for문과 foreach문 실행 결과

 

기타 참고

break문

  • break;
  • 반복문, 조건문에서 사용가능
  • 해당 조건을 만나게 되면 조건문을 종료

break문 예시
break문 실행 결과

 

continue문

  • continue;
  • 반복문에서 사용
  • 해당 조건에 해당되면 이후 실행을 하지 않고 다음 조건을 실행

continue문 예시
continue문 실행 결과

 

 

 

반응형

+ Recent posts