언어/Java

조건문과 반복문

O_oz 2023. 8. 20. 18:17
반응형

1. 제어문 : 조건식과 중괄호 {} 블록으로 구성

    - 조건문 : if문, switch문

    - 반복문 : for문, while문, do-while문

    - 제어문 블록 내부에 또 다른 제어문 사용 가능

 

2. if문

public class Example {
	public static void main (String[] args) {
    	int score = (int)(Math.random()*100) + 1;
        
        String grade;
        
        if (score >= 90) {
			if (score >= 98) {
            	grade = "S";
            } else if (score >= 95) {
            	grade = "A+";
            } else {
            	grade = "A";
            }
        } else if (score >= 80) {
        	grade = "B";
        } else {
        	grade = "F";
        }
    }
}

    - 조건식에는 true 또는 false 값을 산출할 수 있는 연산식이나 boolean 변수가 올 수 있음

    - 중괄호 {} 블록은 여러 개의 실행문을 하나로 묶기 위해 사용

    - if문 블록 내부에 if, switch, for, while, do-while문을 중첩 가능

 

3. switch문

public class Example {
	public static void main (String[] args) {
    	char grade = 'B';
        
        switch (grade) {
        	case 'A' :
            case 'a' :
            	System.out.println("성적 : 우수");
                break;
        	case 'B' :
            case 'b' :
            	System.out.println("성적 : 보통");
                break;
            default :
            	System.out.println("성적 : 나쁨");
        }
    }
}

    - 변수의 값에 따라 실행문이 결정됨

    - 괄호 안의 값과 동일한 값을 갖는 case의 실행문을 실행

    - 동일한 값의 case가 없으면 default의 실행문을 실행 / default는 생략 가능

    - break는 다음 case를 실행하지 않고 switch문을 빠져나옴

    - char 타입 변수나 String 타입 변수도 연산식에 사용 가능

 

4. for문

for (초기화식; 조건식; 증감식) {
	실행문;
}

    - 주어진 횟수만큼 실행문을 반복 실행할 때 적합

    - 초기화식 : 필요 없을 경우 생략 가능 /  둘 이상의 초기화도 가능 / 초기화식에서 선언된 변수는 for문 블록 내부에서만 사용 가능 / 부동소수점 타입을 초기화식에 사용 시 오류 발생 가능

    - 조건식 : 조건식 평가 결과가 true이면 실행문을 실행 false이면 반복문 종료

    - 증감식 : 실행문이 모두 실행되면 증감식이 실행되고 다시 조건식 평가

 

5. while문

while (조건식) {
	실행문;
}

    - 조건식이 true일 경우 계속해서 반복

    - 조건식에는 boolean 변수나 true/false 값을 산출하는 어떠한 연산식도 가능

    - 조건식에 true를 사용하면 무한 루프 발생 > 빠져나오기 위해선 종료 코드 또는 break문 필요

 

6. do-while문

do {
	실행문;
} while (조건식);

    - 블록 내부의 실행문을 우선 실행시키고 실행 결과에 따라 반복문의 실행 여부를 결정할 경우

    - 실행문을 실행하고 실행문 종료 시 조건식을 평가하고 평가 결과에 따라 반복 여부를 결정

    - while() 뒤에 세미콜론 (;)을 붙여야 함

 

7. break, continue문

    - break문 : 반복문을 실행 중지할 때 사용 / 주로 if문과 함께 사용됨 / 중첩 반복문에서 break문은 가장 가까운 반복문만 종료, 바깥 반복문까지 종료시키기 위해서는 바깥 반복문에 라벨을 붙이고 'break 라벨;'을 사용

public class Example {
	public static void main (String[] args) {
    	Outter : for (char upper = 'A'; upper <= 'Z'; upper++) {
        	for (char lower = 'a'; lower <= 'z'; lower++) {
            	System.out.println(upper + "-" + lower);
                if (lower == 'g') {
                	break Outter;
                }
            }
        }
        System.out.println("프로그램 종료");
    }
}

    - continue문 : 반복문에서만 사용 / 블록 내부에서 continue문이 실행되면 for문의 증감식 또는 while, do-while문의 조건식으로 이동 / 반복문을 종료하지 않고 계속 반복을 수행 / 주로 if문과 함께 사용됨

public class Example {
	public static void main (String[] args) {
    	for (int i = 1; i <= 10; i++) {
        	if (i % 2 != 0) {
            	continue;
            }
            System.out.println(i);
        }
    }
}
반응형

'언어 > Java' 카테고리의 다른 글

클래스  (2) 2023.08.23
참조 타입  (0) 2023.08.21
연산자  (0) 2023.08.20
변수와 타입  (0) 2023.08.18
자바 시작  (0) 2023.08.17