조건문
- if문
- if, else문
- 중첩 if문
- switch문
필요에 따라서 조건이 만족되면 문장의 실행 순서를 변경 할 수 있는 기능
3가지 제어 구조
조건문
조건에 따라서 특정한 행동을 하도록 지시할 수 있는 문장
일상 생활에서의 조건문의 예시
- 만약 비가 오지 않으면 테니스를 친다.
- 만약 시간이 없는 경우에는 택시를 탄다.
- 만약 날씨가 좋고 공휴일이면 공원에 산책을 간다.
- 점수가 60점 이상이면 합격이고 그렇지 않으면 불합격이다.
if-else문
if (조건식)
문장1; // 조건식이 true이면 해당 문장이 실행된다.
else
문장2; // 조건식이 false이면 해당 문장이 실행된다.
예시
if (grade >= 60) // grade가 60 이상일 때
System.out.println("60점 이상입니다");
else // grade가 60 미만일 때
System.out.println("60점 미만입니다");
else절 생략
if문에서 else절을 생략할 수도 있는데, 이 경우에는 if-then 구조라고 한다.
복합문
복합문(compound statement)
- 중괄호를 이용하여 문장들을 그룹핑 하는 것
- 블록(block) 이라고 한다.
- 단일문 대신 들어 갈 수 있다.
if (grade >= 60) {
System.out.println("합격입니다");
System.out.println(grade + " 점입니다.");
} else {
System.out.println("불합격입니다");
System.out.println(grade + "점 입니다. ");
중첩 if
if문 안에 if문이 포함되는 것
if (grade >= 80) {
if (grade >= 90)
System.out.println("90점 이상입니다.");
else
System.out.println("80점 이상 90점 미만입니다.");
} else {
System.out.println("80점 미만입니다.");
}
주의점 : else 절은 가장 가까운 if절과 매치된다.
연속적인 if
if( 조건식1 )
문장1;
else if( 조건식2 )
문장2;
else if( 조건식3 )
문장3;
else
문장4;
Switch문
여러 가지 경우 중에서 하나를 선택하는데 사용
int num = 3;
switch (num) {
case 0:
System.out.println("0임");
break;
case 1:
System.out.println("1임");
break;
case 2:
System.out.println("2임");
break;
case 3:
System.out.println("3임");
break;
default:
System.out.println("0~3에 해당하지 않음");
break;
- 위와 같은 코드가 있으면 자바는 순차적으로 case를 순회하여 조건에 부합하는지 검사를 진행하고 해당 하는 case가 있으면 해당 case의 문장을 실행한다.
- 만약 해당하는 case가 없으면 default문이 실행된다.
switch문의 break 용도
switch문에서의 break 용도는 해당하는 조건을 찾은 다음 해당 조건의 문장을 실행하고 switch문을 중지 시키는 용도이다.
만약 break문을 생략한다면, 해당하는 조건의 밑에 있는 case들이 조건에 상관없이 모두 실행되어버린다.
조건문
- if문
- if, else문
- 중첩 if문
- switch문
필요에 따라서 조건이 만족되면 문장의 실행 순서를 변경 할 수 있는 기능
3가지 제어 구조
조건문
조건에 따라서 특정한 행동을 하도록 지시할 수 있는 문장
일상 생활에서의 조건문의 예시
- 만약 비가 오지 않으면 테니스를 친다.
- 만약 시간이 없는 경우에는 택시를 탄다.
- 만약 날씨가 좋고 공휴일이면 공원에 산책을 간다.
- 점수가 60점 이상이면 합격이고 그렇지 않으면 불합격이다.
if-else문
if (조건식)
문장1; // 조건식이 true이면 해당 문장이 실행된다.
else
문장2; // 조건식이 false이면 해당 문장이 실행된다.
예시
if (grade >= 60) // grade가 60 이상일 때
System.out.println("60점 이상입니다");
else // grade가 60 미만일 때
System.out.println("60점 미만입니다");
else절 생략
if문에서 else절을 생략할 수도 있는데, 이 경우에는 if-then 구조라고 한다.
복합문
복합문(compound statement)
- 중괄호를 이용하여 문장들을 그룹핑 하는 것
- 블록(block) 이라고 한다.
- 단일문 대신 들어 갈 수 있다.
if (grade >= 60) {
System.out.println("합격입니다");
System.out.println(grade + " 점입니다.");
} else {
System.out.println("불합격입니다");
System.out.println(grade + "점 입니다. ");
중첩 if
if문 안에 if문이 포함되는 것
if (grade >= 80) {
if (grade >= 90)
System.out.println("90점 이상입니다.");
else
System.out.println("80점 이상 90점 미만입니다.");
} else {
System.out.println("80점 미만입니다.");
}
주의점 : else 절은 가장 가까운 if절과 매치된다.
연속적인 if
if( 조건식1 )
문장1;
else if( 조건식2 )
문장2;
else if( 조건식3 )
문장3;
else
문장4;
Switch문
여러 가지 경우 중에서 하나를 선택하는데 사용
int num = 3;
switch (num) {
case 0:
System.out.println("0임");
break;
case 1:
System.out.println("1임");
break;
case 2:
System.out.println("2임");
break;
case 3:
System.out.println("3임");
break;
default:
System.out.println("0~3에 해당하지 않음");
break;
- 위와 같은 코드가 있으면 자바는 순차적으로 case를 순회하여 조건에 부합하는지 검사를 진행하고 해당 하는 case가 있으면 해당 case의 문장을 실행한다.
- 만약 해당하는 case가 없으면 default문이 실행된다.
switch문의 break 용도
switch문에서의 break 용도는 해당하는 조건을 찾은 다음 해당 조건의 문장을 실행하고 switch문을 중지 시키는 용도이다.
만약 break문을 생략한다면, 해당하는 조건의 밑에 있는 case들이 조건에 상관없이 모두 실행되어버린다.