集合表達式是C#12推出的語法特性
旨在簡化集合的語法
傳統的集合語法,根據情況可能會有好幾種不同的寫法,如下
``` csharp
string[] s1 = new string[] { "a", "b", "c" };
List<string> s2 = new() { "d", "e", "f" };
string[] s3 = Array.Empty<string>();
PrintArray(new string[] { "g", "h", "i" });
```
有些地方要用{},有些地方要用[],實際上在使用的時候有可能會造成混淆(雖然編譯器會做檢查...)
集合表達式就是希望簡化這些語法,以下程式是經過集合表達式修改後的程式碼
```csharp
string[] s1 = ["a", "b", "c"];
List<string> s2 = ["d", "e", "f"];
string[] s3 = [];
PrintArray(["g", "h", "i"]);
```
此外,可以用(散佈運算子)來合併集合
``` csharp
string[] s5 = [.. s1, .. s2, .. s3];
```