C# for vs while 루프: 사용 시기 및 예제
AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

C# 루프: for vs while - 각각 사용 시기 (실제 예제 포함)

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

웹 개발, 앱 개발, 개발 툴

대상자

C# 초보 개발자 및 중급자

  • 난이도: 중간 (루프 선택 기준 이해 필요)

핵심 요약

  • for 루프: 반복 횟수가 정확히 알고 있을 때 사용 (예: 배열 처리, 고정된 횟수)
  • for (int i = 0; i < 10; i++)
  • while 루프: 동적 조건이 변경될 때 사용 (예: 파일 끝까지 읽기, 사용자 입력 대기)
  • while ((line = reader.ReadLine()) != null)
  • 코드 가독성 향상: for은 정확한 반복 범위를, while은 조건 변경에 적합한 구조를 강조

섹션별 세부 요약

1. `for` 루프 사용 시기

  • 반복 횟수가 정해진 경우 (예: 배열 요소 처리)
  • int[] scores = { 95, 87, 92, 78, 88 };
  • for (int i = 0; i < scores.Length; i++)
  • 예시: 5x5 별표 그리기
  • for (int row = 0; row < 5; row++)
  • for (int col = 0; col < 5; col++)
  • 장점: 반복 범위가 명확하고, 초기화/조건/증가식이 하나의 블록에 포함

2. `while` 루프 사용 시기

  • 반복 횟수가 미리 알 수 없는 경우 (예: 파일 끝까지 읽기, 사용자 입력 대기)
  • StreamReader reader = new StreamReader("data.txt");
  • while ((line = reader.ReadLine()) != null)
  • 예시: 비밀번호 입력 유효성 검사
  • do { ... } while (password.Length < 8);
  • 장점: 조건 변화에 유연하게 대응 가능

3. 실무 예제 비교

  • 정적 데이터 처리: for 루프 사용 (예: CountChar 함수)
  • for (int i = 0; i < text.Length; i++)
  • 동적 조건: while 루프 사용 (예: 네트워크 요청 재시도)
  • while (!connectionEstablished)
  • 오류 예방: for 루프는 증가식이 자동으로 포함되어, 무한 루프 오류 방지

4. 실무 팁

  • for 루프: 집합 처리, 정확한 반복 횟수가 필요한 경우
  • foreach (var item in collection)
  • while 루프: 외부 조건 변화에 의존하는 경우
  • while (condition)
  • 구조적 명확성: while은 조건이 명확한 경우, for은 반복 범위가 명확한 경우

결론

  • for는 정확한 반복 횟수가 필요하고, while은 조건 변경에 적합
  • 실무 적용 팁: for는 집합 처리, while은 외부 조건 변화에 사용
  • 예제 참고: forCountChar 함수, while은 파일 끝까지 읽기 시 사용
  • 결론: 루프 선택은 코드 가독성과 유지보수성을 고려한 의도에 따라 결정되어야 함