C# 13의 컬렉션 식

C#12의 컬렉션 식은 컬렉션 형태를 좀 더 일반적으로 표현하고 스프레드 연산 ..을 이용해 여러 컬렉션을 쉽게 결합할 수 있도록 합니다.

하지만 다음의 형태는 아직 쓸 수 없는데요,

var numbers = [1, 2, 3, 4, 5];

컬렉션을 어떤 유형으로 대표해야 하는지 알 수 없기 때문인데 C# 13에서는 이를 List<T>로 확정한 듯 합니다.

그리고 아직 지원하지 않는 Dictionary<TKey, TValue>도 지원될 예정입니다.

6 Likes

배열보다는 리스트가 많이 쓰이는 추세이니, 좋은 결정인 것 같습니다.

이렇게 직관성을 잃지 않으면서도 간편해지는 발전은 언제나 환영입니다. ^^

6 Likes

다시 생각해보니, 아래와 같은 문법은 계속 불가능할 수도 있다는 의미도 되는군요.

int[,] intArray = [[1,2,3], [4,5,6]]; // 불가능
int[,] intArray = {{1,2,3}, {4,5,6}}; // 가능
6 Likes

저는 저기에 확장해서 배열에 대한 구조분해를 좀 더 지원해줬으면 좋겠네요.

var (a, b) = await Task.WhenAll(taskA, taskB, TaskC);

이거 해볼라고 짱구를 굴렸지만 일단은 안 하는 걸로…

5 Likes