共用方式為


ImmutableArray<T> 結構

定義

表示不可變的陣列;這表示一旦建立,就無法變更它。

NuGet 套件System.Collections.Immutable關於不可變集合以及如何安裝

generic <typename T>
public value class ImmutableArray : IEquatable<System::Collections::Immutable::ImmutableArray<T>>, System::Collections::Generic::ICollection<T>, System::Collections::Generic::IEnumerable<T>, System::Collections::Generic::IList<T>, System::Collections::Generic::IReadOnlyCollection<T>, System::Collections::Generic::IReadOnlyList<T>, System::Collections::IList, System::Collections::Immutable::IImmutableList<T>, System::Collections::IStructuralComparable, System::Collections::IStructuralEquatable
public struct ImmutableArray<T> : IEquatable<System.Collections.Immutable.ImmutableArray<T>>, System.Collections.Generic.ICollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IList<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.Generic.IReadOnlyList<T>, System.Collections.IList, System.Collections.Immutable.IImmutableList<T>, System.Collections.IStructuralComparable, System.Collections.IStructuralEquatable
public readonly struct ImmutableArray<T> : IEquatable<System.Collections.Immutable.ImmutableArray<T>>, System.Collections.Generic.ICollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IList<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.Generic.IReadOnlyList<T>, System.Collections.IList, System.Collections.Immutable.IImmutableList<T>, System.Collections.IStructuralComparable, System.Collections.IStructuralEquatable
type ImmutableArray<'T> = struct
    interface IReadOnlyList<'T>
    interface IReadOnlyCollection<'T>
    interface seq<'T>
    interface IEnumerable
    interface IList<'T>
    interface ICollection<'T>
    interface IImmutableList<'T>
    interface IList
    interface ICollection
type ImmutableArray<'T> = struct
    interface ICollection<'T>
    interface seq<'T>
    interface IEnumerable
    interface IList<'T>
    interface IReadOnlyCollection<'T>
    interface IReadOnlyList<'T>
    interface ICollection
    interface IList
    interface IImmutableList<'T>
type ImmutableArray<'T> = struct
    interface IReadOnlyList<'T>
    interface seq<'T>
    interface IEnumerable
    interface IReadOnlyCollection<'T>
    interface IList<'T>
    interface ICollection<'T>
    interface IList
    interface ICollection
    interface IImmutableList<'T>
type ImmutableArray<'T> = struct
    interface IReadOnlyList<'T>
    interface IReadOnlyCollection<'T>
    interface seq<'T>
    interface IEnumerable
    interface IList<'T>
    interface ICollection<'T>
    interface IList
    interface ICollection
    interface IImmutableList<'T>
Public Structure ImmutableArray(Of T)
Implements ICollection(Of T), IEnumerable(Of T), IEquatable(Of ImmutableArray(Of T)), IImmutableList(Of T), IList, IList(Of T), IReadOnlyCollection(Of T), IReadOnlyList(Of T), IStructuralComparable, IStructuralEquatable

類型參數

T

陣列所儲存之元素的類型。

繼承
ImmutableArray<T>
實作

範例

此範例示範如何建立不可變的陣列,並逐一查看其中的專案:

// Create an immutable array of numbers
ImmutableArray<int> numbers = ImmutableArray.Create(1, 2, 3, 4, -1, -2);

// Iterate over all items in the array and print them
foreach (int n in numbers)
{
    Console.Write(n);
    Console.Write(' ');
}
// Output: 1 2 3 4 -1 -2

此範例示範如何新增和移除原始數位中的專案,以建立新的不可變數組:

ImmutableArray<int> numbers2 = numbers.RemoveAt(0).Add(-3);
// numbers2 will contain: 2 3 4 -1 -2 -3

此範例示範如何使用 ImmutableArray<T>.Builder建立不可變的陣列:

// Create immutable array builder
ImmutableArray<int>.Builder builder = ImmutableArray.CreateBuilder<int>();

// Iterate over all items in the original array and add positive elements to the builder
for (int i = 0; i < numbers.Length; i++)
{
    if (numbers[i] > 0) builder.Add(numbers[i]);
}

// Create an immutable array from the contents of the builder
ImmutableArray<int> numbers3 = builder.ToImmutable();
// numbers3 will contain: 1 2 3 4

備註

ImmutableArray<T> 有不同的案例,其他案例最適合 ImmutableList<T>

使用不可變數組的原因:

  • 更新數據很少見,或元素數目相當小(小於16個專案)

  • 您必須能夠在效能關鍵區段中逐一查看數據

  • 您有許多不可變集合的實例,而且無法負擔將數據保留在樹狀結構中

使用不可變清單的原因:

  • 更新數據很常見,或項目數目不預期很小

  • 更新集合比反覆運算內容更具效能

下表摘要說明 ImmutableArray<T> 的效能特性

作業 ImmutableArray<T> 複雜度 ImmutableList<T> 複雜度 批注
專案 O(1) O(log n) 直接編製基礎陣列的索引
Add() O(n) O(log n) 需要建立新的陣列

欄位

Empty

取得空的不可變數組。

屬性

IsDefault

取得值,指出這個陣列是否已宣告,但未初始化。

IsDefaultOrEmpty

取得值,指出這個 ImmutableArray<T> 是空的,還是未初始化。

IsEmpty

取得值,指出這個 ImmutableArray<T> 是否為空白。

Item[Int32]

取得不可變數組中指定索引處的專案。

Length

取得陣列中的項目數目。

方法

Add(T)

傳回原始數位的複本,並將指定的專案新增至結尾。

AddRange(IEnumerable<T>)

傳回原始數位的複本,其中包含加入至陣列結尾的指定專案。

AddRange(ImmutableArray<T>)

傳回原始數位的複本,其中包含加入至陣列結尾的指定專案。

AddRange(ImmutableArray<T>, Int32)

將指定的專案加入至陣列的結尾。

AddRange(ReadOnlySpan<T>)

將指定的值加入至此清單。

AddRange(T[])

將指定的值加入至此清單。

AddRange(T[], Int32)

將指定的專案加入至陣列的結尾。

AddRange<TDerived>(ImmutableArray<TDerived>)

將指定的專案加入至陣列的結尾。

AddRange<TDerived>(TDerived[])

將指定的專案加入至陣列的結尾。

As<TOther>()

傳回新的不可變數組,其中包含這個數位的項目轉換成不同的類型。

AsMemory()

透過這個不可變數組建立新的唯讀記憶體區域。

AsSpan()

在這個不可變的陣列上建立新的唯讀範圍。

AsSpan(Int32, Int32)

建立目前 ImmutableArray<T>部分的 ReadOnlySpan<T>,從指定長度的指定位置開始。

AsSpan(Range)

根據指定的 range,建立目前 ImmutableArray<T> 部分的跨越。

CastArray<TOther>()

藉由將基礎陣列轉換成類型為 TOther的數位,初始化 ImmutableArray<T> 結構的新實例。

CastUp<TDerived>(ImmutableArray<TDerived>)

根據現有實例的內容,初始化 ImmutableArray<T> 結構的新實例,讓共變數靜態轉換有效率地重複使用現有的陣列。

Clear()

傳回已移除所有元素的陣列。

Contains(T)

判斷指定的專案是否存在於陣列中。

Contains(T, IEqualityComparer<T>)

判斷指定的專案是否存在於陣列中。

CopyTo(Int32, T[], Int32, Int32)

將這個陣列中的指定項目複製到指定起始索引處的指定數位。

CopyTo(Span<T>)

將目前 ImmutableArray<T> 的項目複製到 Span<T>

CopyTo(T[])

將這個陣列的內容複製到指定的陣列。

CopyTo(T[], Int32)

從指定的目的地索引開始,將這個數位的內容複製到指定的陣列。

Equals(ImmutableArray<T>)

指出指定的陣列是否等於這個陣列。

Equals(Object)

判斷這個陣列是否等於指定的物件。

GetEnumerator()

傳回逐一查看陣列內容的列舉值。

GetHashCode()

傳回這個實例的哈希碼。

IndexOf(T)

搜尋指定項目的陣列。

IndexOf(T, Int32)

搜尋指定項目的陣列。

IndexOf(T, Int32, IEqualityComparer<T>)

搜尋指定項目的陣列。

IndexOf(T, Int32, Int32)

搜尋指定項目的陣列。

IndexOf(T, Int32, Int32, IEqualityComparer<T>)

搜尋指定項目的陣列。

Insert(Int32, T)

傳回新的陣列,其中包含在指定位置插入的指定值。

InsertRange(Int32, IEnumerable<T>)

在指定的索引處插入指定的值。

InsertRange(Int32, ImmutableArray<T>)

在指定的索引處插入指定的值。

InsertRange(Int32, ReadOnlySpan<T>)

在指定的索引處插入指定的值。

InsertRange(Int32, T[])

在指定的索引處插入指定的值。

ItemRef(Int32)

取得唯讀清單中指定之 index 專案的唯讀參考。

LastIndexOf(T)

搜尋指定項目的陣列;從陣列結尾開始。

LastIndexOf(T, Int32)

搜尋指定項目的陣列;從陣列結尾開始。

LastIndexOf(T, Int32, Int32)

搜尋指定項目的陣列;從陣列結尾開始。

LastIndexOf(T, Int32, Int32, IEqualityComparer<T>)

搜尋指定項目的陣列;從陣列結尾開始。

OfType<TResult>()

將這個陣列的項目篩選為可指派給指定型別的專案。

Remove(T)

傳回數位,其中第一個出現的指定專案已從陣列中移除。 如果找不到相符專案,則會傳回目前的陣列。

Remove(T, IEqualityComparer<T>)

傳回數位,其中第一個出現的指定專案已從陣列中移除。

如果找不到相符專案,則會傳回目前的陣列。

RemoveAll(Predicate<T>)

從符合指定條件的陣列中移除所有專案。

RemoveAt(Int32)

傳回數位,其項目位於已移除的指定位置。

RemoveRange(IEnumerable<T>)

從這個陣列中移除指定的專案。

RemoveRange(IEnumerable<T>, IEqualityComparer<T>)

從這個陣列中移除指定的專案。

RemoveRange(ImmutableArray<T>)

從此清單中移除指定的值。

RemoveRange(ImmutableArray<T>, IEqualityComparer<T>)

從此清單中移除指定的專案。

RemoveRange(Int32, Int32)

傳回數位,其項目位於已移除的指定位置。

RemoveRange(ReadOnlySpan<T>, IEqualityComparer<T>)

從此清單中移除指定的值。

RemoveRange(T[], IEqualityComparer<T>)

從此清單中移除指定的值。

Replace(T, T)

尋找陣列中等於指定值的第一個專案,並以指定的新值取代值。

Replace(T, T, IEqualityComparer<T>)

尋找陣列中等於指定值的第一個專案,並以指定的新值取代值。

SetItem(Int32, T)

將位於指定索引處的專案取代為指定的專案。

Slice(Int32, Int32)

從指定長度的指定索引開始,從目前 ImmutableArray<T> 形成配量。

Sort()

使用預設比較子排序不可變數組中的專案。

Sort(Comparison<T>)

使用指定的 Comparison<T>來排序整個 ImmutableArray<T> 中的專案。

Sort(IComparer<T>)

使用指定的比較子來排序不可變數組中的專案。

Sort(Int32, Int32, IComparer<T>)

使用指定的比較子,排序不可變數組中的指定專案。

ToBuilder()

建立可變動數位,其內容與這個數位相同,而且可以使用標準可變動介面在多個作業之間有效率地變動。

運算子

Equality(ImmutableArray<T>, ImmutableArray<T>)

傳回值,這個值表示兩個陣列是否相等。

Equality(Nullable<ImmutableArray<T>>, Nullable<ImmutableArray<T>>)

傳回值,這個值表示兩個陣列是否相等。

Inequality(ImmutableArray<T>, ImmutableArray<T>)

傳回值,這個值表示兩個陣列是否不相等。

Inequality(Nullable<ImmutableArray<T>>, Nullable<ImmutableArray<T>>)

檢查兩個陣列之間的不相等。

明確介面實作

ICollection.CopyTo(Array, Int32)

從指定索引處開始,將此陣列複製到另一個陣列。

ICollection.Count

取得陣列的大小。

ICollection.IsSynchronized

請參閱 ICollection 介面。 一律會傳回 true,因為不可變的集合是安全線程的。

ICollection.SyncRoot

取得同步根目錄。

ICollection<T>.Add(T)

在所有情況下都會擲回 NotSupportedException

ICollection<T>.Clear()

在所有情況下都會擲回 NotSupportedException

ICollection<T>.Count

取得集合中的項目數目。

ICollection<T>.IsReadOnly

取得值,指出這個實例是否為唯讀。

ICollection<T>.Remove(T)

在所有情況下都會擲回 NotSupportedException

IEnumerable.GetEnumerator()

傳回逐一查看不可變數組的列舉值。

IEnumerable<T>.GetEnumerator()

傳回逐一查看陣列舉值。

IImmutableList<T>.Add(T)

傳回原始數位的複本,並將指定的專案新增至結尾。

IImmutableList<T>.AddRange(IEnumerable<T>)

傳回原始數位的複本,其中包含加入至陣列結尾的指定專案。

IImmutableList<T>.Clear()

傳回已移除所有元素的陣列。

IImmutableList<T>.Insert(Int32, T)

傳回新的陣列,其中包含在指定位置插入的指定值。

IImmutableList<T>.InsertRange(Int32, IEnumerable<T>)

在指定的索引處插入指定的值。

IImmutableList<T>.Remove(T, IEqualityComparer<T>)

傳回陣列,其中第一個出現的指定專案已從陣列中移除;如果找不到相符專案,則會傳回目前的陣列。

IImmutableList<T>.RemoveAll(Predicate<T>)

從符合指定條件的陣列中移除所有專案。

IImmutableList<T>.RemoveAt(Int32)

傳回數位,其項目位於已移除的指定位置。

IImmutableList<T>.RemoveRange(IEnumerable<T>, IEqualityComparer<T>)

從這個陣列中移除指定的專案。

IImmutableList<T>.RemoveRange(Int32, Int32)

傳回數位,其項目位於已移除的指定位置。

IImmutableList<T>.Replace(T, T, IEqualityComparer<T>)

尋找陣列中等於指定值的第一個專案,並以指定的新值取代值。

IImmutableList<T>.SetItem(Int32, T)

將位於指定索引處的專案取代為指定的專案。

IList.Add(Object)

在所有情況下都會擲回 NotSupportedException

IList.Clear()

在所有情況下都會擲回 NotSupportedException

IList.Contains(Object)

在所有情況下都會擲回 NotSupportedException

IList.IndexOf(Object)

取得指定索引處的值。

IList.Insert(Int32, Object)

在所有情況下都會擲回 NotSupportedException

IList.IsFixedSize

取得值,指出這個實例是否為固定大小。

IList.IsReadOnly

取得值,指出這個實例是否為唯讀。

IList.Item[Int32]

取得或設定指定索引處的 Object

IList.Remove(Object)

在所有情況下都會擲回 NotSupportedException

IList.RemoveAt(Int32)

在所有情況下都會擲回 NotSupportedException

IList<T>.Insert(Int32, T)

在所有情況下都會擲回 NotSupportedException

IList<T>.Item[Int32]

取得或設定唯讀清單中指定索引處的專案。

IList<T>.RemoveAt(Int32)

在所有情況下都會擲回 NotSupportedException

IReadOnlyCollection<T>.Count

取得集合中的項目數目。

IReadOnlyList<T>.Item[Int32]

取得位於指定索引處的專案。

IStructuralComparable.CompareTo(Object, IComparer)

判斷目前的集合專案在之前、發生於與 相同的位置,或遵循排序順序中的另一個專案。

IStructuralEquatable.Equals(Object, IEqualityComparer)

判斷這個陣列在結構上是否等於指定的陣列。

IStructuralEquatable.GetHashCode(IEqualityComparer)

傳回目前實例的哈希碼。

擴充方法

ToFrozenDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

根據指定的索引鍵選取器函式,從 IEnumerable<T> 建立 FrozenDictionary<TKey,TValue>

ToFrozenDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

根據指定的索引鍵選取器和項目選取器函式,從 IEnumerable<T> 建立 FrozenDictionary<TKey,TValue>

ToFrozenSet<T>(IEnumerable<T>, IEqualityComparer<T>)

使用指定的值建立 FrozenSet<T>

AsReadOnly<T>(IList<T>)

傳回指定清單的唯讀 ReadOnlyCollection<T> 包裝函式。

BinarySearch<T>(ImmutableArray<T>, T)

使用預設比較子搜尋所指定專案的已排序不可變數組,如果找到,則會傳回專案以零起始的索引。

BinarySearch<T>(ImmutableArray<T>, T, IComparer<T>)

搜尋已排序的不可變數組中是否有指定的專案,並在找到專案時傳回以零起始的索引。

BinarySearch<T>(ImmutableArray<T>, Int32, Int32, T)

搜尋已排序的不可變數組中是否有指定的專案,並在找到專案時傳回以零起始的索引。

BinarySearch<T>(ImmutableArray<T>, Int32, Int32, T, IComparer<T>)

搜尋所指定專案的排序不可變數組,並傳回專案以零起始的索引。

ToImmutableArray<TSource>(IEnumerable<TSource>)

從指定的集合建立不可變的陣列。

ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

從現有的專案集合建構不可變的字典,將轉換函式套用至來源索引鍵。

ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

根據序列的一些轉換,建構不可變的字典。

ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>)

列舉和轉換序列,併產生其內容的不可變字典。

ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>)

列舉和轉換序列,並使用指定的索引鍵比較子產生其內容的不可變字典。

ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>, IEqualityComparer<TValue>)

列舉和轉換序列,並使用指定的索引鍵和值比較子產生其內容的不可變字典。

ToImmutableHashSet<TSource>(IEnumerable<TSource>)

列舉序列,併產生其內容的不可變哈希集。

ToImmutableHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>)

列舉序列、產生其內容的不可變哈希集,並使用集合類型的指定相等比較子。

IndexOf<T>(IImmutableList<T>, T)

搜尋指定的物件,並傳回清單中第一個出現專案之以零起始的索引。

IndexOf<T>(IImmutableList<T>, T, IEqualityComparer<T>)

搜尋指定的物件,並傳回清單中第一個出現專案之以零起始的索引。

IndexOf<T>(IImmutableList<T>, T, Int32)

搜尋指定的物件,並傳回從指定索引延伸至最後一個專案之不可變清單中,第一個出現專案之以零起始的索引。

IndexOf<T>(IImmutableList<T>, T, Int32, Int32)

搜尋指定的物件,並傳回從指定索引延伸至最後一個專案之不可變清單中,第一個出現專案之以零起始的索引。

LastIndexOf<T>(IImmutableList<T>, T)

搜尋指定的物件,並傳回整個不可變清單中最後一個出現專案之以零起始的索引。

LastIndexOf<T>(IImmutableList<T>, T, IEqualityComparer<T>)

搜尋指定的物件,並傳回整個不可變清單中最後一個出現專案之以零起始的索引。

LastIndexOf<T>(IImmutableList<T>, T, Int32)

搜尋指定的物件,並傳回從第一個元素延伸至指定索引之不可變清單中最後一個出現專案的以零起始的索引。

LastIndexOf<T>(IImmutableList<T>, T, Int32, Int32)

搜尋指定的物件,並傳回從第一個元素延伸至指定索引之不可變清單中最後一個出現專案的以零起始的索引。

Remove<T>(IImmutableList<T>, T)

從此清單中移除指定的值。

RemoveRange<T>(IImmutableList<T>, IEnumerable<T>)

從此清單中移除指定的值。

Replace<T>(IImmutableList<T>, T, T)

將清單中的第一個相等專案取代為指定的專案。

ToImmutableList<TSource>(IEnumerable<TSource>)

列舉序列,併產生其內容的不可變清單。

ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>)

列舉和轉換序列,併產生其內容的不可變排序字典。

ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>)

列舉和轉換序列,並使用指定的索引鍵比較子產生其內容的不可變排序字典。

ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>, IEqualityComparer<TValue>)

列舉和轉換序列,並使用指定的索引鍵和值比較子產生其內容的不可變排序字典。

ToImmutableSortedSet<TSource>(IEnumerable<TSource>)

列舉序列,併產生其內容的不可變排序集。

ToImmutableSortedSet<TSource>(IEnumerable<TSource>, IComparer<TSource>)

列舉序列、產生其內容的不可變排序集,並使用指定的比較子。

CopyToDataTable<T>(IEnumerable<T>)

傳回包含 DataRow 物件複本的 DataTable,指定泛型參數 TDataRow的輸入 IEnumerable<T> 物件。

CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption)

DataRow 物件複製到指定的 DataTable,指定輸入 IEnumerable<T> 物件,其中泛型參數 TDataRow

CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler)

DataRow 物件複製到指定的 DataTable,指定輸入 IEnumerable<T> 物件,其中泛型參數 TDataRow

Aggregate<TSource>(IEnumerable<TSource>, Func<TSource,TSource,TSource>)

在序列上套用累加器函式。

Aggregate<TSource,TAccumulate>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>)

在序列上套用累加器函式。 指定的種子值會當做初始累加器值使用。

Aggregate<TSource,TAccumulate,TResult>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>)

在序列上套用累加器函式。 指定的種子值會當做初始累加器值使用,而指定的函式則用來選取結果值。

AggregateBy<TSource,TKey,TAccumulate>(IEnumerable<TSource>, Func<TSource, TKey>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, IEqualityComparer<TKey>)

表示不可變的陣列;這表示一旦建立,就無法變更它。

NuGet 套件System.Collections.Immutable關於不可變集合以及如何安裝

AggregateBy<TSource,TKey,TAccumulate>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TKey,TAccumulate>, Func<TAccumulate,TSource,TAccumulate>, IEqualityComparer<TKey>)

表示不可變的陣列;這表示一旦建立,就無法變更它。

NuGet 套件System.Collections.Immutable關於不可變集合以及如何安裝

All<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

判斷序列的所有專案是否符合條件。

Any<TSource>(IEnumerable<TSource>)

判斷序列是否包含任何專案。

Any<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

判斷序列的任何專案是否符合條件。

Append<TSource>(IEnumerable<TSource>, TSource)

將值附加至序列結尾。

AsEnumerable<TSource>(IEnumerable<TSource>)

傳回輸入類型為 IEnumerable<T>

Average<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

計算 Decimal 值序列的平均值,這些值是在輸入序列的每個元素上叫用轉換函式所取得。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

計算 Double 值序列的平均值,這些值是在輸入序列的每個元素上叫用轉換函式所取得。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

計算 Int32 值序列的平均值,這些值是在輸入序列的每個元素上叫用轉換函式所取得。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

計算 Int64 值序列的平均值,這些值是在輸入序列的每個元素上叫用轉換函式所取得。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

計算在輸入序列的每個元素上叫用轉換函式所取得之可為 Null Decimal 值序列的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

計算在輸入序列的每個元素上叫用轉換函式所取得之可為 Null Double 值序列的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

計算在輸入序列的每個元素上叫用轉換函式所取得之可為 Null Int32 值序列的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

計算在輸入序列的每個元素上叫用轉換函式所取得之可為 Null Int64 值序列的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

計算在輸入序列的每個元素上叫用轉換函式所取得之可為 Null Single 值序列的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

計算 Single 值序列的平均值,這些值是在輸入序列的每個元素上叫用轉換函式所取得。

Cast<TResult>(IEnumerable)

IEnumerable 的項目轉換成指定的型別。

Chunk<TSource>(IEnumerable<TSource>, Int32)

將序列的專案分割成大社區塊,最多 size

Concat<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

串連兩個序列。

Contains<TSource>(IEnumerable<TSource>, TSource)

判斷序列是否使用預設相等比較子來包含指定的專案。

Contains<TSource>(IEnumerable<TSource>, TSource, IEqualityComparer<TSource>)

使用指定的 IEqualityComparer<T>,判斷序列是否包含指定的專案。

Count<TSource>(IEnumerable<TSource>)

傳回序列中的項目數目。

Count<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

傳回數位,代表指定序列中滿足條件的項目數目。

CountBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

表示不可變的陣列;這表示一旦建立,就無法變更它。

NuGet 套件System.Collections.Immutable關於不可變集合以及如何安裝

DefaultIfEmpty<TSource>(IEnumerable<TSource>)

如果序列是空的,則傳回指定序列的專案或單一集合中型別參數的預設值。

DefaultIfEmpty<TSource>(IEnumerable<TSource>, TSource)

如果序列是空的,則傳回指定序列的專案或單一集合中的指定值。

Distinct<TSource>(IEnumerable<TSource>)

使用預設相等比較子來比較值,從序列傳回不同的專案。

Distinct<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>)

使用指定的 IEqualityComparer<T> 來比較值,從序列傳回不同的專案。

DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

根據指定的索引鍵選取器函式,從序列傳回不同的專案。

DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

根據指定的索引鍵選取器函式,並使用指定的比較子來比較索引鍵,從序列傳回不同的專案。

ElementAt<TSource>(IEnumerable<TSource>, Index)

傳回序列中指定索引處的專案。

ElementAt<TSource>(IEnumerable<TSource>, Int32)

傳回序列中指定索引處的專案。

ElementAtOrDefault<TSource>(IEnumerable<TSource>, Index)

傳回序列中指定索引處的專案,如果索引超出範圍,則傳回預設值。

ElementAtOrDefault<TSource>(IEnumerable<TSource>, Int32)

傳回序列中指定索引處的專案,如果索引超出範圍,則傳回預設值。

Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

使用預設相等比較子來比較值,產生兩個序列的集合差異。

Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)

使用指定的 IEqualityComparer<T> 來比較值,產生兩個序列的集合差異。

ExceptBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>)

根據指定的索引鍵選取器函式,產生兩個序列的集合差異。

ExceptBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>)

根據指定的索引鍵選取器函式,產生兩個序列的集合差異。

First<TSource>(IEnumerable<TSource>)

傳回序列的第一個專案。

First<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

傳回序列中符合指定條件的第一個專案。

FirstOrDefault<TSource>(IEnumerable<TSource>)

傳回序列的第一個專案,如果序列不包含任何專案,則傳回預設值。

FirstOrDefault<TSource>(IEnumerable<TSource>, TSource)

傳回序列的第一個專案,如果序列不包含任何專案,則傳回指定的預設值。

FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

傳回序列的第一個專案,如果找不到這類專案,則為符合條件或預設值。

FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource)

傳回序列中符合條件的第一個專案,如果沒有找到這類專案,則傳回指定的預設值。

GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

根據指定的索引鍵選取器函式,將序列的專案分組。

GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

根據指定的索引鍵選取器函式將序列的專案分組,並使用指定的比較子比較索引鍵。

GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>)

根據指定的索引鍵選取器函式將序列的專案分組,並使用指定的函式來投影每個群組的專案。

GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

根據索引鍵選取器函式,將序列的專案分組。 索引鍵是使用比較子來比較,而且每個群組的元素都是使用指定的函式來投影。

GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>)

根據指定的索引鍵選取器函式,將序列的專案分組,並從每個群組及其索引鍵建立結果值。

GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>, IEqualityComparer<TKey>)

根據指定的索引鍵選取器函式,將序列的專案分組,並從每個群組及其索引鍵建立結果值。 使用指定的比較子來比較索引鍵。

GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>,TResult>)

根據指定的索引鍵選取器函式,將序列的專案分組,並從每個群組及其索引鍵建立結果值。 每個群組的項目都會使用指定的函式來投影。

GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>, TResult>, IEqualityComparer<TKey>)

根據指定的索引鍵選取器函式,將序列的專案分組,並從每個群組及其索引鍵建立結果值。 索引鍵值是使用指定的比較子來比較,而每個群組的元素都是使用指定的函式來投影。

GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>)

根據索引鍵的相等性,將兩個序列的專案相互關聯,並將結果分組。 默認相等比較子可用來比較索引鍵。

GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>)

根據索引鍵相等將兩個序列的專案相互關聯,並將結果分組。 指定的 IEqualityComparer<T> 可用來比較索引鍵。

Index<TSource>(IEnumerable<TSource>)

傳回可列舉,將元素的索引併入 Tuple 中。

Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

使用預設相等比較子比較值來產生兩個序列的集合交集。

Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)

使用指定的 IEqualityComparer<T> 來比較值,產生兩個序列的集合交集。

IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>)

根據指定的索引鍵選取器函式,產生兩個序列的集合交集。

IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>)

根據指定的索引鍵選取器函式,產生兩個序列的集合交集。

Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>)

根據比對索引鍵,將兩個序列的專案相互關聯。 默認相等比較子可用來比較索引鍵。

Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>, IEqualityComparer<TKey>)

根據比對索引鍵,將兩個序列的專案相互關聯。 指定的 IEqualityComparer<T> 可用來比較索引鍵。

Last<TSource>(IEnumerable<TSource>)

傳回序列的最後一個專案。

Last<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

傳回符合指定條件之序列的最後一個專案。

LastOrDefault<TSource>(IEnumerable<TSource>)

傳回序列的最後一個專案,如果序列不包含任何專案,則傳回預設值。

LastOrDefault<TSource>(IEnumerable<TSource>, TSource)

傳回序列的最後一個專案,如果序列不包含任何專案,則傳回指定的預設值。

LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

傳回序列的最後一個專案,如果找不到這類專案,則為符合條件或預設值。

LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource)

傳回符合條件之序列的最後一個專案,如果沒有找到這類專案,則傳回指定的預設值。

LongCount<TSource>(IEnumerable<TSource>)

傳回代表序列中項目總數的 Int64

LongCount<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

傳回 Int64,代表序列中滿足條件的項目數目。

Max<TSource>(IEnumerable<TSource>)

傳回泛型序列中的最大值。

Max<TSource>(IEnumerable<TSource>, IComparer<TSource>)

傳回泛型序列中的最大值。

Max<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

在序列的每個元素上叫用轉換函式,並傳回最大 Decimal 值。

Max<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

在序列的每個元素上叫用轉換函式,並傳回最大 Double 值。

Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

在序列的每個元素上叫用轉換函式,並傳回最大 Int32 值。

Max<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

在序列的每個元素上叫用轉換函式,並傳回最大 Int64 值。

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

在序列的每個元素上叫用轉換函式,並傳回可為 Null 的最大 Decimal 值。

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

在序列的每個元素上叫用轉換函式,並傳回可為 Null 的最大 Double 值。

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

在序列的每個元素上叫用轉換函式,並傳回可為 Null 的最大 Int32 值。

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

在序列的每個元素上叫用轉換函式,並傳回可為 Null 的最大 Int64 值。

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

在序列的每個元素上叫用轉換函式,並傳回可為 Null 的最大 Single 值。

Max<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

在序列的每個元素上叫用轉換函式,並傳回最大 Single 值。

Max<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>)

在泛型序列的每個專案上叫用轉換函式,並傳回產生的最大值。

MaxBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

根據指定的索引鍵選取器函式,傳回泛型序列中的最大值。

MaxBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>)

根據指定的索引鍵選取器函式和索引鍵比較子,傳回泛型序列中的最大值。

Min<TSource>(IEnumerable<TSource>)

傳回泛型序列中的最小值。

Min<TSource>(IEnumerable<TSource>, IComparer<TSource>)

傳回泛型序列中的最小值。

Min<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

在序列的每個元素上叫用轉換函式,並傳回最小值 Decimal 值。

Min<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

在序列的每個元素上叫用轉換函式,並傳回最小值 Double 值。

Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

在序列的每個元素上叫用轉換函式,並傳回最小值 Int32 值。

Min<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

在序列的每個元素上叫用轉換函式,並傳回最小值 Int64 值。

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

在序列的每個專案上叫用轉換函式,並傳回可為 null 的最小值 Decimal 值。

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

在序列的每個專案上叫用轉換函式,並傳回可為 null 的最小值 Double 值。

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

在序列的每個專案上叫用轉換函式,並傳回可為 null 的最小值 Int32 值。

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

在序列的每個專案上叫用轉換函式,並傳回可為 null 的最小值 Int64 值。

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

在序列的每個專案上叫用轉換函式,並傳回可為 null 的最小值 Single 值。

Min<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

在序列的每個元素上叫用轉換函式,並傳回最小值 Single 值。

Min<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>)

在泛型序列的每個專案上叫用轉換函式,並傳回產生的最小值。

MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

根據指定的索引鍵選取器函式,傳回泛型序列中的最小值。

MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>)

根據指定的索引鍵選取器函式和索引鍵比較子,傳回泛型序列中的最小值。

OfType<TResult>(IEnumerable)

根據指定的型別篩選 IEnumerable 的專案。

Order<T>(IEnumerable<T>)

以遞增順序排序序列的專案。

Order<T>(IEnumerable<T>, IComparer<T>)

以遞增順序排序序列的專案。

OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

根據索引鍵,以遞增順序排序序列的專案。

OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>)

使用指定的比較子,以遞增順序排序序列的專案。

OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

根據索引鍵,以遞減順序排序序列的專案。

OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>)

使用指定的比較子,以遞減順序排序序列的專案。

OrderDescending<T>(IEnumerable<T>)

依遞減順序排序序列的專案。

OrderDescending<T>(IEnumerable<T>, IComparer<T>)

依遞減順序排序序列的專案。

Prepend<TSource>(IEnumerable<TSource>, TSource)

將值加入序列的開頭。

Reverse<TSource>(IEnumerable<TSource>)

反轉序列中項目的順序。

Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>)

將序列的每個專案投影成新的表單。

Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,TResult>)

藉由合併元素的索引,將序列的每個專案投影成新的表單。

SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TResult>>)

將序列的每個專案投影到 IEnumerable<T>,並將產生的序列扁平化成一個序列。

SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TResult>>)

將序列的每個專案投影至 IEnumerable<T>,並將產生的序列扁平化成一個序列。 每個來源專案的索引會以該專案的投影形式使用。

SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>)

將序列的每個專案投影到 IEnumerable<T>,將產生的序列扁平化成一個序列,並在其中的每個元素上叫用結果選取器函式。

SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>)

將序列的每個專案投影到 IEnumerable<T>,將產生的序列扁平化成一個序列,並在其中的每個元素上叫用結果選取器函式。 每個來源專案的索引會用於該專案的中繼投影形式。

SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

判斷兩個序列是否相等,方法是使用其型別的默認相等比較子來比較專案。

SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)

使用指定的 IEqualityComparer<T>,判斷兩個序列是否相等。

Single<TSource>(IEnumerable<TSource>)

傳回序列的唯一專案,如果序列中沒有一個專案,則會擲回例外狀況。

Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

傳回序列中唯一符合指定條件的專案,如果有多個這類專案存在,則會擲回例外狀況。

SingleOrDefault<TSource>(IEnumerable<TSource>)

傳回序列的唯一專案;如果序列是空的,則傳回預設值;如果序列中有多個項目,這個方法會擲回例外狀況。

SingleOrDefault<TSource>(IEnumerable<TSource>, TSource)

傳回序列的唯一專案,如果序列是空的,則傳回指定的預設值;如果序列中有多個項目,這個方法會擲回例外狀況。

SingleOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

傳回序列中唯一符合指定條件的專案,如果沒有這類專案,則傳回預設值;如果一個以上的專案符合條件,這個方法會擲回例外狀況。

SingleOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource)

傳回序列中唯一符合指定條件的專案,如果沒有這類專案,則傳回指定的預設值;如果一個以上的專案符合條件,這個方法會擲回例外狀況。

Skip<TSource>(IEnumerable<TSource>, Int32)

略過序列中指定數目的專案,然後傳回其餘專案。

SkipLast<TSource>(IEnumerable<TSource>, Int32)

傳回新的可列舉集合,其中包含 source 的專案,並省略來源集合的最後一個 count 專案。

SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

只要指定的條件為 true,就會略過序列中的項目,然後傳回其餘元素。

SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>)

只要指定的條件為 true,就會略過序列中的項目,然後傳回其餘元素。 元素的索引用於述詞函式的邏輯中。

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

計算 Decimal 值序列的總和,這些值是在輸入序列的每個元素上叫用轉換函式所取得。

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

計算 Double 值序列的總和,這些值是在輸入序列的每個元素上叫用轉換函式所取得。

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

計算 Int32 值序列的總和,這些值是在輸入序列的每個元素上叫用轉換函式所取得。

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

計算 Int64 值序列的總和,這些值是在輸入序列的每個元素上叫用轉換函式所取得。

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

計算在輸入序列的每個元素上叫用轉換函式所取得之可為 Null Decimal 值的序列總和。

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

計算在輸入序列的每個元素上叫用轉換函式所取得之可為 Null Double 值的序列總和。

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

計算在輸入序列的每個元素上叫用轉換函式所取得之可為 Null Int32 值的序列總和。

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

計算在輸入序列的每個元素上叫用轉換函式所取得之可為 Null Int64 值的序列總和。

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

計算在輸入序列的每個元素上叫用轉換函式所取得之可為 Null Single 值的序列總和。

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

計算 Single 值序列的總和,這些值是在輸入序列的每個元素上叫用轉換函式所取得。

Take<TSource>(IEnumerable<TSource>, Int32)

從序列開頭傳回指定的連續項目數目。

Take<TSource>(IEnumerable<TSource>, Range)

傳回序列中連續專案的指定範圍。

TakeLast<TSource>(IEnumerable<TSource>, Int32)

傳回新的可列舉集合,其中包含來自 source的最後一個 count 專案。

TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

只要指定的條件為 true,就會從序列傳回專案。

TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>)

只要指定的條件為 true,就會從序列傳回專案。 元素的索引用於述詞函式的邏輯中。

ToArray<TSource>(IEnumerable<TSource>)

IEnumerable<T>建立陣列。

ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

根據指定的索引鍵選取器函式,從 IEnumerable<T> 建立 Dictionary<TKey,TValue>

ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

根據指定的索引鍵選取器函式和索引鍵比較子,從 IEnumerable<T> 建立 Dictionary<TKey,TValue>

ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>)

根據指定的索引鍵選取器和項目選取器函式,從 IEnumerable<T> 建立 Dictionary<TKey,TValue>

ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

根據指定的索引鍵選取器函式、比較子和元素選取器函式,從 IEnumerable<T> 建立 Dictionary<TKey,TValue>

ToHashSet<TSource>(IEnumerable<TSource>)

IEnumerable<T>建立 HashSet<T>

ToHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>)

使用 comparer 比較索引鍵,從 IEnumerable<T> 建立 HashSet<T>

ToList<TSource>(IEnumerable<TSource>)

IEnumerable<T>建立 List<T>

ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

根據指定的索引鍵選取器函式,從 IEnumerable<T> 建立 Lookup<TKey,TElement>

ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

根據指定的索引鍵選取器函式和索引鍵比較子,從 IEnumerable<T> 建立 Lookup<TKey,TElement>

ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>)

根據指定的索引鍵選取器和項目選取器函式,從 IEnumerable<T> 建立 Lookup<TKey,TElement>

ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

根據指定的索引鍵選取器函式、比較子和元素選取器函式,從 IEnumerable<T> 建立 Lookup<TKey,TElement>

TryGetNonEnumeratedCount<TSource>(IEnumerable<TSource>, Int32)

嘗試判斷序列中的項目數目,而不強制列舉。

Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

使用預設相等比較子產生兩個序列的集合聯集。

Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)

使用指定的 IEqualityComparer<T>產生兩個序列的集合聯集。

UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>)

根據指定的索引鍵選取器函式,產生兩個序列的集合聯集。

UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

根據指定的索引鍵選取器函式,產生兩個序列的集合聯集。

Where<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

根據述詞篩選值序列。

Where<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>)

根據述詞篩選值序列。 每個元素的索引都會用於述詞函式的邏輯中。

Zip<TFirst,TSecond>(IEnumerable<TFirst>, IEnumerable<TSecond>)

產生具有來自兩個指定序列之元素的 Tuple 序列。

Zip<TFirst,TSecond,TThird>(IEnumerable<TFirst>, IEnumerable<TSecond>, IEnumerable<TThird>)

產生具有來自三個指定序列之元素的 Tuple 序列。

Zip<TFirst,TSecond,TResult>(IEnumerable<TFirst>, IEnumerable<TSecond>, Func<TFirst,TSecond,TResult>)

將指定的函式套用至兩個序列的對應專案,產生結果序列。

Aggregate<T>(ImmutableArray<T>, Func<T,T,T>)

以累計方式將函式套用至元素序列。

Aggregate<TAccumulate,T>(ImmutableArray<T>, TAccumulate, Func<TAccumulate,T,TAccumulate>)

以累計方式將函式套用至元素序列。

Aggregate<TAccumulate,TResult,T>(ImmutableArray<T>, TAccumulate, Func<TAccumulate,T,TAccumulate>, Func<TAccumulate,TResult>)

以累計方式將函式套用至元素序列。

All<T>(ImmutableArray<T>, Func<T,Boolean>)

取得值,指出這個陣列中的所有專案是否符合指定的條件。

Any<T>(ImmutableArray<T>)

取得值,指出陣列是否包含任何專案。

Any<T>(ImmutableArray<T>, Func<T,Boolean>)

取得值,指出陣列是否包含任何符合指定條件的專案。

ElementAt<T>(ImmutableArray<T>, Int32)

傳回數位中指定索引處的專案。

ElementAtOrDefault<T>(ImmutableArray<T>, Int32)

傳回序列中指定索引處的專案,如果索引超出範圍,則傳回預設值。

First<T>(ImmutableArray<T>)

傳回數位列中的第一個專案。

First<T>(ImmutableArray<T>, Func<T,Boolean>)

傳回序列中符合指定條件的第一個專案。

FirstOrDefault<T>(ImmutableArray<T>)

傳回序列的第一個專案,如果序列不包含任何專案,則傳回預設值。

FirstOrDefault<T>(ImmutableArray<T>, Func<T,Boolean>)

傳回序列的第一個專案,如果找不到這類專案,則為符合條件或預設值。

Last<T>(ImmutableArray<T>)

傳回數位的最後一個專案。

Last<T>(ImmutableArray<T>, Func<T,Boolean>)

傳回符合指定條件之序列的最後一個專案。

LastOrDefault<T>(ImmutableArray<T>)

傳回序列的最後一個專案,如果序列不包含任何專案,則傳回預設值。

LastOrDefault<T>(ImmutableArray<T>, Func<T,Boolean>)

傳回序列的最後一個專案,如果找不到這類專案,則為符合條件或預設值。

Select<T,TResult>(ImmutableArray<T>, Func<T,TResult>)

將序列的每個專案投影成新的表單。

SelectMany<TSource,TCollection,TResult>(ImmutableArray<TSource>, Func<TSource,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>)

將序列的每個專案投影到 IEnumerable<T>,將產生的序列扁平化成一個序列,並在其中的每個元素上叫用結果選取器函式。

SequenceEqual<TDerived,TBase>(ImmutableArray<TBase>, IEnumerable<TDerived>, IEqualityComparer<TBase>)

判斷兩個序列是否根據相等比較子相等。

SequenceEqual<TDerived,TBase>(ImmutableArray<TBase>, ImmutableArray<TDerived>, IEqualityComparer<TBase>)

判斷兩個序列是否根據相等比較子相等。

SequenceEqual<TDerived,TBase>(ImmutableArray<TBase>, ImmutableArray<TDerived>, Func<TBase,TBase,Boolean>)

判斷兩個序列是否根據相等比較子相等。

Single<T>(ImmutableArray<T>)

傳回序列的唯一專案,如果序列中沒有一個專案,則會擲回例外狀況。

Single<T>(ImmutableArray<T>, Func<T,Boolean>)

傳回序列中唯一符合指定條件的專案,如果有多個這類專案存在,則會擲回例外狀況。

SingleOrDefault<T>(ImmutableArray<T>)

傳回數位的唯一元素,如果序列是空的,則傳回預設值;如果序列中有多個項目,這個方法會擲回例外狀況。

SingleOrDefault<T>(ImmutableArray<T>, Func<T,Boolean>)

傳回序列中唯一符合指定條件的專案,如果沒有這類專案,則傳回預設值;如果一個以上的專案符合條件,這個方法會擲回例外狀況。

ToArray<T>(ImmutableArray<T>)

將這個陣列的內容複製到可變動的陣列。

ToDictionary<TKey,T>(ImmutableArray<T>, Func<T,TKey>)

根據這個陣列的內容建立字典。

ToDictionary<TKey,T>(ImmutableArray<T>, Func<T,TKey>, IEqualityComparer<TKey>)

根據這個陣列的內容建立字典。

ToDictionary<TKey,TElement,T>(ImmutableArray<T>, Func<T,TKey>, Func<T,TElement>)

根據這個陣列的內容建立字典。

ToDictionary<TKey,TElement,T>(ImmutableArray<T>, Func<T,TKey>, Func<T,TElement>, IEqualityComparer<TKey>)

根據這個陣列的內容建立字典。

Where<T>(ImmutableArray<T>, Func<T,Boolean>)

根據述詞篩選值序列。

AsParallel(IEnumerable)

啟用查詢的平行處理。

AsParallel<TSource>(IEnumerable<TSource>)

啟用查詢的平行處理。

AsQueryable(IEnumerable)

IEnumerable 轉換成 IQueryable

AsQueryable<TElement>(IEnumerable<TElement>)

將泛型 IEnumerable<T> 轉換成泛型 IQueryable<T>

Ancestors<T>(IEnumerable<T>)

傳回專案集合,其中包含來源集合中每個節點的上階。

Ancestors<T>(IEnumerable<T>, XName)

傳回元素的篩選集合,其中包含來源集合中每個節點的上階。 集合中只會包含具有相符 XName 的專案。

DescendantNodes<T>(IEnumerable<T>)

傳回來源集合中每個文件和專案之子代節點的集合。

Descendants<T>(IEnumerable<T>)

傳回專案集合,其中包含來源集合中每個元素和檔的子代專案。

Descendants<T>(IEnumerable<T>, XName)

傳回篩選的專案集合,其中包含來源集合中每個元素和檔的子代專案。 集合中只會包含具有相符 XName 的專案。

Elements<T>(IEnumerable<T>)

傳回來源集合中每個專案和檔的子專案集合。

Elements<T>(IEnumerable<T>, XName)

傳回來源集合中每個專案和檔之子項目的篩選集合。 集合中只會包含具有相符 XName 的專案。

InDocumentOrder<T>(IEnumerable<T>)

傳回包含來源集合中所有節點的節點集合,依檔順序排序。

Nodes<T>(IEnumerable<T>)

傳回來源集合中每個檔和專案之子節點的集合。

Remove<T>(IEnumerable<T>)

從來源集合的父節點中移除每個節點。

適用於

執行緒安全性

此類型是安全線程。