System.Collections.Immutable 命名空間

包含定義不可變集合的介面與類別。

類別

ImmutableArray

提供建立不可變陣列的方法;也就是說,一旦建立之後,便無法變更。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableArray<T>.Builder

可寫入的陣列存取子,其可轉換為 ImmutableArray<T> 執行個體而不需配置額外的記憶體。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableDictionary

提供一組 ImmutableDictionary<TKey,TValue> 類別執行個體的初始化方法。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableDictionary<TKey,TValue>.Builder

代表有少量或沒有記憶體配置變動的雜湊對應,此雜湊對應可以非常有效率的方式產生或建置於不可變的雜湊對應執行個體上。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableDictionary<TKey,TValue>

表示不可變、未排序之索引鍵和值的集合。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableHashSet

提供一組 ImmutableHashSet<T> 類別執行個體的初始化方法。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableHashSet<T>.Builder

代表有少數或沒有記憶體配置變動的雜湊集,此雜湊集可以非常有效率的方式產生或建置於不可變的雜湊集執行個體上。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableHashSet<T>

代表不可變、未排序的雜湊集。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableInterlocked

包含不可變集合之連鎖交換機制。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableList

提供一組 ImmutableList<T> 類別執行個體的初始化方法。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableList<T>.Builder

代表有少量或沒有記憶體配置變動的清單,這個清單可以非常有效率的方式產生或建置於不可變的清單執行個體上。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableList<T>

表示一個可以依照索引存取強式型別物件的不可變清單。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableQueue

提供一組 ImmutableQueue<T> 類別執行個體的初始化方法。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableQueue<T>

代表不可變的佇列。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableSortedDictionary

提供一組 ImmutableSortedDictionary<TKey,TValue> 類別執行個體的初始化方法。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableSortedDictionary<TKey,TValue>.Builder

代表隨著少數記憶體配置或無記憶體配置而變動的排序字典,此排序字典可以非常有效率地產生或建置於不可變排序字典執行個體上。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableSortedDictionary<TKey,TValue>

代表不可變排序字典。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableSortedSet

提供一組 ImmutableSortedSet<T> 類別執行個體的初始化方法。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableSortedSet<T>.Builder

代表排序的資料集,能夠進行少量或沒有記憶體配置的變更,有效率地操作或建立不可變的排序資料集。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableSortedSet<T>

代表不可變的已排序資料集實作。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableStack

提供一組 ImmutableStack<T> 類別執行個體的初始化方法。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableStack<T>

表示不可變的堆疊。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

結構

ImmutableArray<T>.Enumerator

陣列列舉程式。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableArray<T>

代表不可變的陣列,意即在建立該陣列之後,就無法加以變更。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableDictionary<TKey,TValue>.Enumerator

列舉不可變字典內容且不配置記憶體。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableHashSet<T>.Enumerator

列舉不可變雜湊集的內容而不配置任何記憶體。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableList<T>.Enumerator

列舉二進位樹狀目錄的內容。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableQueue<T>.Enumerator

列舉不可變佇列的內容而不需配置任何記憶體。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableSortedDictionary<TKey,TValue>.Enumerator

列舉二進位樹狀目錄的內容。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableSortedSet<T>.Enumerator

列舉二進位樹狀目錄的內容。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

ImmutableStack<T>.Enumerator

列舉不可變堆疊的內容而不需配置任何記憶體。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

介面

IImmutableDictionary<TKey,TValue>

表示索引鍵/值組的不可變集合。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

IImmutableList<T>

代表無法修改之項目的清單。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

IImmutableQueue<T>

表示物件的不可變先進先出集合。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

IImmutableSet<T>

代表一組項目,您只能透過為該資料集建立新的執行個體來進行修改。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

IImmutableStack<T>

表示不可變的後進先出 (LIFO) 集合。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

備註

不可變的集合可讓您:

  • 共用集合的方法,是讓它的取用者可以確保集合永遠不會變更。

  • 在多執行緒應用程式中提供隱含的執行緒安全性 (不需要鎖定,即可存取集合)。

  • 依照函式程式設計作法進行。

  • 在列舉期間修改集合,並可確保原始集合不會變更。

不可變的集合類別適用于 .NET Core 和 .NET 5 +,但它們不是隨 .NET Framework 散發的核心類別庫的一部分。 從 .NET Framework 4.5 開始,可以透過 NuGet 取得。

若要透過 NuGet 安裝不可變的集合:

  1. 在 Visual Studio 中開啟您的專案,然後從 [ 專案 ] 功能表中選擇 [ 管理 NuGet 封裝 ]。

  2. (選擇性)選取 [ 包含發行 前版本] 核取方塊。

    此選項可讓您存取不可變類別的新發行前版本,因為它們變成可用。

  3. 使用 搜尋 方塊來尋找 system.string 套件。

  4. 在左窗格中,選取 [system.string ] 套件。 在右窗格中,選取所需的版本,然後選擇 [安裝]。

上面所述的安裝步驟適用于 Visual Studio 2015。 針對其他版本的 Visual Studio,這些步驟可能會稍有不同,因為使用者介面 (UI) 有所差異。