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

C#에서 배열을 반복하는 'foreach' 루프 사용 방법

foreach 루프는 for 루프와 비슷하지만, 배열이나 컬렉션의 각 요소마다 반복 작업을 실행한다는 점이 다릅니다. 따라서 foreach 루프에서는 인덱스가 존재하지 않으며, 요소에 직접 접근하여 값을 처리할 수 있습니다.

foreach 루프의 기본 구조

foreach 루프는 다음과 같은 형태로 작성합니다:

foreach (int p in arr)
    Console.Write(p + " ");

위 코드는 배열 arr의 모든 요소를 처음부터 끝까지 순회하면서 각 요소를 변수 p에 담아 출력합니다.

예제: 버블 정렬 후 foreach로 출력하기

다음은 버블 정렬(Bubble Sort)로 배열의 요소를 오름차순으로 정렬한 후, foreach 루프를 사용해 정렬된 결과를 화면에 출력하는 완전한 예제입니다.

using System;
namespace BubbleSort {
    class MySort {
        static void Main(string[] args) {
            int[] arr = { 78, 55, 45, 98, 13 };
            int temp;
            for (int j = 0; j <= arr.Length - 2; j++) {
                for (int i = 0; i <= arr.Length - 2; i++) {
                    if (arr[i] > arr[i + 1]) {
                        temp = arr[i + 1];
                        arr[i + 1] = arr[i];
                        arr[i] = temp;
                    }
                }
            }
            Console.WriteLine("Sorted:");
            foreach (int p in arr)
                Console.Write(p + " ");
            Console.Read();
        }
    }
}

실행 결과

Sorted:
13 45 55 78 98

정리

foreach 루프는 인덱스 관리 없이 배열이나 컬렉션의 모든 요소를 간편하게 순회할 수 있어, 코드의 가독성을 높이고 인덱스 범위 초과 같은 오류를 방지하는 데 유용합니다. 단순히 요소를 읽거나 출력하는 경우라면 for 루프보다 foreach 루프를 사용하는 것이 좋습니다.