컬렉션 순회하기
목록, 배열, 사전을 배워 보세요.
컬렉션 순회하기은(는) CoddyKit의 무료 C# Academy 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 C# Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. C# Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
순회할 수 있는 컬렉션
배열, List<T>, 사전 등 많은 C# 형식에 foreach를 사용하여 반복할 수 있습니다.
이 형식들은 공통 인터페이스를 구현하므로 모두 순회를 지원합니다. 사용하기 위해 세부 사항을 알 필요는 없습니다.
배열 순회하기
배열의 고정된 크기는 생성될 때 정해집니다.
어떤 요소 형식의 배열이든 같은 방법으로 반복할 수 있습니다.
double[] prices = { 9.99, 4.50, 19.00 };
foreach (var p in prices)
{
Console.WriteLine(p);
}목록 순회하기
List<T>는 크기를 늘리거나 줄일 수 있습니다. 가장 흔히 사용하는 컬렉션 중 하나입니다.
목록을 반복하는 방법은 배열을 반복하는 방법과 정확히 같습니다.
var fruits = new List<string> { "apple", "pear" };
foreach (var f in fruits)
{
Console.WriteLine(f);
}순회하면서 세기
때로는 foreach 안에서 직접 카운터를 사용하고 싶을 수 있습니다.
반복문 전에 변수를 선언하고 각 순회마다 증가시키십시오.
var items = new List<string> { "a", "b", "c" };
int i = 0;
foreach (var item in items)
{
Console.WriteLine(i + ": " + item);
i++;
}사전 순회하기
Dictionary<K,V>는 키-값 쌍을 저장합니다.
사전을 반복하면 .Key와 .Value가 있는 KeyValuePair를 얻습니다.
var ages = new Dictionary<string, int>
{
["Ada"] = 36,
["Linus"] = 54
};
foreach (var pair in ages)
{
Console.WriteLine(pair.Key + "=" + pair.Value);
}사전의 키와 값
키만 필요하거나 값만 필요하다면 .Keys 또는 .Values 속성을 사용하십시오.
각 속성 자체가 반복할 수 있는 컬렉션입니다.
foreach (var name in ages.Keys)
{
Console.WriteLine(name);
}HashSet 순회하기
HashSet<T>는 고유한 값을 저장합니다. 중복된 값은 무시됩니다.
foreach를 사용하여 순회할 수 있지만 순서는 보장되지 않습니다.
var tags = new HashSet<string> { "c#", "dotnet", "c#" };
foreach (var t in tags)
{
Console.WriteLine(t);
}중첩된 순회
컬렉션으로 이루어진 컬렉션을 순회하려면 하나의 foreach를 다른 foreach 안에 넣을 수 있습니다.
이렇게 하면 각 row를 순회한 다음 해당 row의 각 값을 순회합니다.
int[][] grid = { new[] {1, 2}, new[] {3, 4} };
foreach (var row in grid)
{
foreach (var v in row)
{
Console.WriteLine(v);
}
}결과 만들기
일반적으로 하나의 컬렉션을 순회하면서 변환한 항목을 다른 컬렉션에 추가합니다.
여기서는 각 숫자를 두 배로 만든 다음 그 결과를 새 목록에 저장합니다.
var nums = new List<int> { 1, 2, 3 };
var doubled = new List<int>();
foreach (var n in nums)
{
doubled.Add(n * 2);
}
Console.WriteLine(string.Join(",", doubled));빈 컬렉션
컬렉션에 요소가 없으면 foreach 본문은 실행되지 않습니다.
오류도 발생하지 않습니다. 따라서 목록이 empty일 수 있어도 foreach는 안전하게 사용할 수 있습니다.
var empty = new List<int>();
foreach (var x in empty)
{
Console.WriteLine("never printed");
}
Console.WriteLine("done");IEnumerable: 공통 기반
반복할 수 있는 모든 컬렉션은 IEnumerable<T>을 구현합니다.
이것이 foreach가 의존하는 규약입니다. 따라서 배열, 목록, 집합, 사전에서 동일한 반복 구문을 사용할 수 있습니다.
빠른 확인
컬렉션을 순회하는 방법에 대한 이해도를 확인해 보십시오.
복습
foreach가 배열, 목록, 사전, 집합에서 어떻게 작동하는지 살펴보았습니다.
이들은 IEnumerable<T> 규약을 공유하므로 모두 같은 반복 방식을 사용할 수 있습니다. 빈 컬렉션도 안전하게 처리되며, 사전에서는 키-값 쌍이 반환됩니다.
자주 묻는 질문
“컬렉션 순회하기” 강의는 무료인가요?
네 — “컬렉션 순회하기” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 C# Academy 강의 전체를 잠금 해제할 수 있습니다. C# Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“컬렉션 순회하기”에서 뭘 배우나요?
목록, 배열, 사전을 배워 보세요. 브라우저에서 직접 실행하는 실습 코드로 C# Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
C# Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 C# Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.
“컬렉션 순회하기” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 C# Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 C# Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.