[TIL][Java][2023-11-13] if문과 switch문 비교
2023. 11. 13. 19:56ㆍTIL/Java
이번 글에서는 앞서 정리했던 두 가지 조건문 if문과 switch문이 어떻게 다른지 간단히 비교를 해보려고 한다.
차이점 1 : 복합조건
if문은 복합조건을 지원한다.
- 복합조건 : 괄호 안에 조건 여러 개를 지정하여 조건문을 수행할 수 있다.
switch문은 피연산자 한개에 대한 조건만 지원한다.
차이점 2 : 코드중복
if문은 상대적으로 코드중복이 많고, switch문은 코드중복이 적다.
코드를 통해 비교해 보자.
// switch문 정리 때 사용하였던 예제코드를 if문으로 바꿔보았다.
// switch
int month = 8;
String monthString = "";
switch (month) {
case 1: monthString = "1월";
break;
case 2: monthString = "2월";
break;
case 3: monthString = "3월";
break;
case 4: monthString = "4월";
break;
case 5: monthString = "5월";
break;
case 6: monthString = "6월";
break;
case 7: monthString = "7월";
break;
case 8: monthString = "8월";
break;
case 9: monthString = "9월";
break;
case 10: monthString = "10월";
break;
case 11: monthString = "11월";
break;
case 12: monthString = "12월";
break;
default: monthString = "알수 없음";
}
System.out.println(monthString); // 8월 출력
// if
if (month == 1) {
monthString = "1월";
} else if (month == 2) {
monthString = "2월";
} else if (month == 3) {
monthString = "3월";
} else if (month == 4) {
monthString = "4월";
} else if (month == 5) {
monthString = "5월";
} else if (month == 6) {
monthString = "6월";
} else if (month == 7) {
monthString = "7월";
} else if (month == 8) {
monthString = "8월";
} else if (month == 9) {
monthString = "9월";
} else if (month == 10) {
monthString = "10월";
} else if (month == 11) {
monthString = "11월";
} else if (month == 12) {
monthString = "12월";
} else {
monthString = "알수 없음";
}
System.out.println(monthString); // 8월 출력
'TIL > Java' 카테고리의 다른 글
[TIL][Java][2023-11-15] 반복문 - while문 / do-while문, break와 continue (0) | 2023.11.15 |
---|---|
[TIL][Java][2023-11-14] 반복문 - for문, 향상된 for문 (0) | 2023.11.14 |
[TIL][Java][2023-11-13] 조건문 - switch (0) | 2023.11.13 |
[TIL][Java][2023-11-10] 조건문 - if (0) | 2023.11.10 |
[TIL][Java][2023-11-09] 연산자의 종류 - 비트 연산 (0) | 2023.11.09 |