foreach 패턴과 컬렉션 이니셜라이저
배열, 목록, 딕셔너리를 대상으로 안전한 foreach 반복문을 작성하고, 컬렉션 이니셜라이저 구문으로 컬렉션을 간결하게 초기화합니다.
foreach 패턴과 컬렉션 이니셜라이저은(는) CoddyKit의 무료 C# Academy 강의입니다. 이것은 3개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 C# Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. C# Academy 강의에는 총 3개의 강의가 포함되어 있습니다.
개요
목표: foreach로 안전하게 반복하고, 컬렉션 초기화 구문으로 컬렉션을 만들고 채웁니다.
- 배열과 목록에서 foreach 사용
- 사전에서 foreach 사용
- List<T> 및 Dictionary<K,V> 초기화 구문
배열과 목록에서 foreach 사용
foreach는 간단하고 안전합니다. 수동으로 인덱스를 지정하지 않고 항목을 하나씩 읽습니다.
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
int[] nums = new int[] { 2, 4, 6 };
int sum = 0;
foreach (int n in nums) // no index to manage, safe bounds
{
sum = sum + n;
}
Console.WriteLine("Sum = " + sum);
List<string> names = new List<string>();
names.Add("Ada");
names.Add("Alan");
foreach (string s in names)
{
Console.WriteLine("Hi " + s);
}
}
}
foreach로 인덱스 사용
foreach에서 인덱스가 필요하면 작은 카운터 변수를 유지합니다.
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
List<string> items = new List<string>();
items.Add("apple");
items.Add("banana");
items.Add("cherry");
int i = 0;
foreach (string item in items)
{
Console.WriteLine("#" + i + ": " + item);
i = i + 1; // manual index when needed
}
}
}
사전에서 foreach 사용
사전을 반복하면 KeyValuePair<K,V>가 반환됩니다. 또는 Keys나 Values만 반복할 수도 있습니다.
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
Dictionary<string, int> stock = new Dictionary<string, int>();
stock["pen"] = 10;
stock["book"] = 5;
foreach (KeyValuePair<string, int> kv in stock)
{
Console.WriteLine(kv.Key + " -> " + kv.Value);
}
// Iterate keys or values only
foreach (string k in stock.Keys) { Console.WriteLine("Key: " + k); }
foreach (int v in stock.Values) { Console.WriteLine("Value: " + v); }
}
}
List<T> 초기화 구문
컬렉션 초기화 구문은 하나의 식으로 목록을 만들고 채웁니다. 내부적으로 반복되는 Add 호출로 확장됩니다.
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
// Calls Add for each element under the hood
List<string> fruits = new List<string> { "apple", "banana", "cherry" };
foreach (string f in fruits)
{
Console.WriteLine(f);
}
}
}
Dictionary 초기화 구문
Dictionary 초기화 구문은 { key, value } 항목을 사용하며, 내부적으로 Add(key, value) 호출로 확장됩니다.
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
// Each { key, value } becomes Add(key, value)
Dictionary<string, int> scores = new Dictionary<string, int>
{
{ "Ada", 95 },
{ "Alan", 90 }
};
// Show contents
foreach (KeyValuePair<string, int> kv in scores)
{
Console.WriteLine(kv.Key + " = " + kv.Value);
}
}
}
초기화 구문의 장점
복습
복습: 배열, 목록, 사전을 안전하게 반복하려면 foreach를 사용합니다. 컬렉션을 간결하게 만들고 채우려면 컬렉션 초기화 구문을 우선 사용합니다.
자주 묻는 질문
“foreach 패턴과 컬렉션 이니셜라이저” 강의는 무료인가요?
네 — “foreach 패턴과 컬렉션 이니셜라이저” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 C# Academy 강의 전체를 잠금 해제할 수 있습니다. C# Academy 강의에는 총 3개의 강의가 포함되어 있습니다.
“foreach 패턴과 컬렉션 이니셜라이저”에서 뭘 배우나요?
배열, 목록, 딕셔너리를 대상으로 안전한 foreach 반복문을 작성하고, 컬렉션 이니셜라이저 구문으로 컬렉션을 간결하게 초기화합니다. 브라우저에서 직접 실행하는 실습 코드로 C# Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
C# Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 C# Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 3개 중 2번째 강의입니다.
“foreach 패턴과 컬렉션 이니셜라이저” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 C# Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 C# Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 배열, 슬라이싱, List , Dictionary
- foreach 패턴과 컬렉션 이니셜라이저
- LINQ 미리 보기: Where, Select, OrderBy, Take/Skip, 지연 실행