728x90
안녕하세요!
이번 글에서는 C#에서 foreach 문을 사용하여 컬렉션을 편리하게 순회하는 방법에 대해 알아보겠습니다.
foreach 문은 배열과 컬렉션을 순회하는데 매우 유용한 기능을 제공합니다.
foreach 문
- foreach 문은 배열이나 컬렉션과 같은 반복 가능한 객체의 모든 요소를 순회(iterate)하는데 사용됩니다.
- 일반적으로 for 문보다 코드를 간결하고 읽기 쉽게 만들어줍니다.
- foreach 문은 컬렉션의 요소를 하나씩 가져와서 임시 변수에 할당하고, 해당 요소에 대한 작업을 수행합니다.
foreach (var item in collection)
{
// 요소에 대한 작업 수행
}
- collection은 배열이나 컬렉션을 나타내는 변수이며, item은 컬렉션의 각 요소를 임시 변수에 할당하는 변수입니다.
- 루프가 반복되면서 collection에 포함되어 있는 요소들이 차례대로 item변수에 할당되며 작업을 처리합니다.
foreach 문의 사용법과 예제
using System;
using System.Collections.Generic;
public class Program
{
public static void Main()
{
// 배열 순회 예제
int[] numbers = { 1, 2, 3, 4, 5 };
Console.WriteLine("배열 순회:");
foreach (var num in numbers)
{
Console.Write($"{num} ");
}
// 리스트 순회 예제
List<string> fruits = new List<string> { "Apple", "Banana", "Orange" };
Console.WriteLine("\n\n리스트 순회:");
foreach (var fruit in fruits)
{
Console.Write($"{fruit} ");
}
}
}
- 위의 예제 코드에서는 먼저 배열과 리스트를 생성하고, foreach 문을 사용하여 해당 컬렉션을 순회합니다.
< 배열 순회 예제해석 >
int[] numbers = { 1, 2, 3, 4, 5 };
- 배열 numbers에 1부터 5까지의 정수가 저장됩니다.
foreach (var num in numbers)
- num은 배열 numbers의 각 요소를 임시 변수에 할당하는 변수입니다.
- 루프의 반복마다 numbers의 요소가 차례대로 num에 할당됩니다.
Console.Write($"{num} ");
- num을 출력하고 각 숫자 사이에 공백을 추가하여 순서대로 출력됩니다.
출력결과
1 2 3 4 5
< 리스트 순회 예제해석 >
List<string> fruits = new List<string> { "Apple", "Banana", "Orange" };
- 리스트 fruits에 과일 이름이 저장됩니다.
foreach (var fruit in fruits)
- fruit는 리스트 fruits의 각 요소를 임시 변수에 할당하는 변수입니다.
- 루프의 반복마다 fruits의 요소들이 차례대로 fruit에 할당됩니다.
Console.Write($"{fruit} ");
- fruit을 출력하고 각 과일 사이에 공백을 추가하여 순서대로 출력됩니다.
출력결과
Apple Banana Orange
foreach 문의 장점
- 컬렉션의 요소를 간편하게 순회할 수 있어 코드를 간결하고 읽기 쉽게 만듭니다.
- 컬렉션의 크기에 따라 반복 횟수가 자동으로 결정되므로 인덱스 관리를 신경쓰지 않아도 됩니다.
- 코드를 최적화하여 더 나은 성능을 제공합니다.
이번 글에서는 C# foreach 문을 사용하여 배열과 컬렉션을 편리하게 순회하는 방법을 알아보았습니다.
foreach 문은 반복 가능한 객체를 다룰 때 유용하게 활용할 수 있는 중요한 기능이며, 코드의 가독성과 효율성을 향상시키는데 큰 도움이 됩니다.
C#에서 foreach 문을 적절하게 활용하여 효율적인 프로그래밍을 진행하시는데 도움이 되었으면 좋겠습니다.
감사합니다!
728x90
'[C#] > 프로그래밍 기초' 카테고리의 다른 글
[C#] 프로그래밍 기초 : 로깅(Logging) (35) | 2023.08.08 |
---|---|
[C#] 프로그래밍 기초 : Call by value & Call by reference (29) | 2023.08.02 |
[C#] 프로그래밍 기초 : 프로퍼티 (15) | 2023.07.31 |
[C#] 프로그래밍 기초 : 병렬제어 (18) | 2023.07.20 |
[C#] 프로그래밍 기초 : 문자열(String) (22) | 2023.07.13 |