Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# 반복문 완벽 정리: while, for, do...while, foreach 활용법

루프(반복문)는 특정 문장 또는 문장 블록을 여러 번 반복해서 실행할 수 있도록 해주는 프로그래밍 구조입니다. 조건에 따라 같은 작업을 효율적으로 처리해야 할 때 필수적으로 사용되며, C#은 다양한 형태의 반복문을 제공합니다.

C#에서 지원하는 주요 반복문

번호반복문 종류 및 설명
1while 루프
주어진 조건이 참(true)인 동안 문장 또는 문장 블록을 계속 반복 실행합니다. 루프 본문을 실행하기 전에 조건을 먼저 검사하므로, 처음부터 조건이 거짓이라면 본문이 한 번도 실행되지 않을 수 있습니다.
2for 루프
일련의 문장을 정해진 횟수만큼 반복 실행합니다. 초기화, 조건 검사, 증감식을 한 줄에 작성할 수 있어 루프 변수를 관리하는 코드가 간결해지는 장점이 있습니다.
3do...while 루프
while 문과 유사하지만, 조건을 루프 본문 실행 에 검사합니다. 따라서 조건과 관계없이 루프 본문이 최소 한 번은 반드시 실행됩니다.

이 외에도 C#에서는 컬렉션이나 배열의 요소를 순회할 때 매우 편리한 foreach 루프를 사용할 수 있습니다. 아래 예제는 bool 배열을 BitArray로 변환한 뒤, foreach를 이용해 각 요소를 출력하는 코드입니다.

foreach 루프 예제

using System;
using System.Collections;

class Demo {
    static void Main() {
        bool[] arr = new bool[5];
        arr[0] = true;
        arr[1] = true;
        arr[2] = false;
        arr[3] = false;

        BitArray bArr = new BitArray(arr);

        foreach (bool b in bArr) {
            Console.WriteLine(b);
        }

        bool str = arr[1];
        Console.WriteLine("Value of 2nd element:" + str);
    }
}

실행 결과

True
True
False
False
False
Value of 2nd element:True

위 예제에서 foreach 루프는 BitArray의 모든 비트 값을 하나씩 순회하며 출력합니다. 인덱스를 직접 다룰 필요 없이 컬렉션의 요소에 안전하게 접근할 수 있어, 배열이나 리스트를 처리할 때 코드의 가독성과 안정성을 크게 높여 줍니다.

반복문 선택 가이드

  • while: 반복 횟수가 정해져 있지 않고, 조건 충족 여부에 따라 반복을 결정해야 할 때 적합합니다.
  • for: 반복 횟수가 명확하게 정해져 있을 때 가장 깔끔하게 사용할 수 있습니다.
  • do...while: 메뉴 입력 처리처럼 최소 한 번은 반드시 실행되어야 하는 경우에 유용합니다.
  • foreach: 배열이나 컬렉션의 모든 요소를 순회할 때 가장 간결하고 안전한 방법입니다.