C#에서는 객체를 간편하게 초기화할 수 있는 두 가지 방법, 객체 초기화(Object Initializer)와 컬렉션 초기화(Collection Initializer)가 있습니다. 이 글에서는 두 방법의 차이와 활용법을 비교해 설명합니다.
1. 객체 초기화(Object Initializer)
객체 초기화는 객체 생성 후 속성 값을 한 번에 설정하는 문법입니다. 생성자 대신 중괄호 안에 프로퍼티를 나열해 초기화할 수 있어 코드가 간결해집니다.
var person = new Person
{
Name = "홍길동",
Age = 30,
City = "서울"
};
2. 컬렉션 초기화(Collection Initializer)
컬렉션 초기화는 리스트나 딕셔너리 같은 컬렉션을 선언과 동시에 원하는 값들로 초기화할 때 사용합니다. 중괄호 안에 컬렉션 요소를 쉼표로 구분해 나열합니다.
var numbers = new List<int> { 1, 2, 3, 4, 5 };
var dict = new Dictionary<string, int>
{
{ "사과", 3 },
{ "바나나", 5 }
};
3. 비교 및 요약
두 초기화 모두 문법적으로 중괄호를 사용하지만, 객체 초기화는 객체의 속성을 명시적으로 할당하는 데 쓰이고, 컬렉션 초기화는 컬렉션 내 요소를 간단히 추가하는 데 사용됩니다. 객체 초기화는 객체 생성과 초기화를 간결하게 도와주며, 컬렉션 초기화는 코드 가독성과 편리함을 크게 향상시킵니다.
상황에 따라 적절한 초기화 방식을 선택해 깔끔한 코드를 작성하세요.
'C#' 카테고리의 다른 글
| C# sealed 키워드로 상속 제한하기 (0) | 2026.06.26 |
|---|---|
| C# 인스턴스 멤버와 정적 멤버의 메모리 차이 (0) | 2026.06.25 |
| C# 로컬 변수 초기화와 스코프 관리 (0) | 2026.06.25 |
| C# 메서드 반환 타입으로 Func<T> 사용하기 (0) | 2026.06.24 |
| C# 가변 인자(params)와 성능 이슈 (0) | 2026.06.24 |