📚 Chapter 1.3: 조건문, 반복문, switch-case 고급 활용
✅ 이 챕터에서 배울 것
C#의 if
, for
, while
, switch
문법은 기본인데,
"고급 쓰임새 + 실무 활용 팁"까지 알면
진짜 코드가 쫙쫙 살아난다!
- 조건문 기본 구조
- 반복문 (
for
, while
, foreach
) 활용
switch-case
의 고급 기능 (when
, 패턴 매칭 등)
break
, continue
, goto
차이점
🧠 조건문 기본 – if / else if / else
int age = 25;
if (age < 20)
{
Console.WriteLine("청소년 요금 적용!");
}
else if (age < 65)
{
Console.WriteLine("일반 요금입니다.");
}
else
{
Console.WriteLine("경로 우대 요금!");
}
✅ 조건문은 위에서부터 순차적으로 평가되며,
처음 참인 조건이 실행되고 종료됨!
🔁 반복문 – for
, while
, foreach
▶️ for
for (int i = 1; i <= 5; i++)
{
Console.WriteLine(i + "번째 반복!");
}
반복 횟수가 정해졌을 때 딱 좋음!
▶️ while
int count = 3;
while (count > 0)
{
Console.WriteLine("카운트다운: " + count);
count--;
}
조건만 만족하면 무한 반복도 가능하다 조심!
▶️ foreach
string[] fruits = { "사과", "배", "귤" };
foreach (string fruit in fruits)
{
Console.WriteLine("과일: " + fruit);
}
배열/컬렉션 순회에 특화!
🧪 break
, continue
완전정복
키워드 | 설명 | 예시 |
break | 반복문 완전 탈출 | if (조건) break; |
continue | 이번 반복만 스킵 | if (조건) continue; |
for (int i = 1; i <= 5; i++)
{
if (i == 3)
continue; // 3은 건너뜀
if (i == 5)
break; // 5에서 반복 종료
Console.WriteLine(i);
}
🔀 switch-case
기본
string grade = "B";
switch (grade)
{
case "A":
Console.WriteLine("최고 점수!");
break;
case "B":
case "C":
Console.WriteLine("괜찮은 점수!");
break;
case "F":
Console.WriteLine("다시 도전!");
break;
default:
Console.WriteLine("유효하지 않은 등급입니다.");
break;
}
✅ case
여러 개 묶을 수 있고, default
는 else 역할!
💥 C# 고급 기능: switch
+ when
int score = 85;
switch (score)
{
case int s when (s >= 90):
Console.WriteLine("A 학점!");
break;
case int s when (s >= 80):
Console.WriteLine("B 학점!");
break;
default:
Console.WriteLine("재도전 필요!");
break;
}
🎯 when
키워드로 조건식을 추가할 수 있음
실무에서 switch
를 좀 더 유연하게 쓸 때 아주 유용함!
🤯 참고: goto case
, goto default
switch (input)
{
case 1:
Console.WriteLine("1번 선택");
goto case 2;
case 2:
Console.WriteLine("2번 자동 실행됨");
break;
default:
goto case 1;
}
많이 쓰이진 않지만, 의도적 흐름 전환이 필요한 경우에 사용됨
💥 장선생의 실전 꿀팁
for
vs foreach
→ 성능 차이는 크지 않지만
foreach
는 컬렉션 수정하면 에러 날 수 있음!
- 조건문 많아질 땐 →
switch
or Dictionary
패턴 고려
break
는 중첩 루프에서 헷갈릴 수 있음 → 라벨 break (C#은 없음!) 대신 구조 잘 잡자
✅ 요약 정리
항목 | 설명 |
if / else | 기본 조건 분기 |
for / while / foreach | 반복 방식 다양하게 활용 |
switch / case | 값에 따라 분기 처리 |
when 조건 | switch에서 조건 필터링 가능 |
break / continue | 반복문 흐름 제어 핵심 |
📘 다음 챕터 예고 🎓
Chapter 1.4: 배열, List, Dictionary – 컬렉션 완전 이해하기!
인덱스로 접근? 키로 접근?
List<T>
, Dictionary<TKey, TValue>
진짜 쓰는 법 알려줄게~!