Enumerable.DistinctBy 方法

定義

多載

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

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

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

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

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

來源:
Distinct.cs
來源:
Distinct.cs
來源:
Distinct.cs

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

public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
 static System::Collections::Generic::IEnumerable<TSource> ^ DistinctBy(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, TKey> ^ keySelector);
public static System.Collections.Generic.IEnumerable<TSource> DistinctBy<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TKey> keySelector);
static member DistinctBy : seq<'Source> * Func<'Source, 'Key> -> seq<'Source>
<Extension()>
Public Function DistinctBy(Of TSource, TKey) (source As IEnumerable(Of TSource), keySelector As Func(Of TSource, TKey)) As IEnumerable(Of TSource)

類型參數

TSource

source 項目的類型。

TKey

要區分元素的索引鍵類型。

參數

source
IEnumerable<TSource>

要移除重複項目的序列。

keySelector
Func<TSource,TKey>

用來擷取各項目之索引鍵的函式。

傳回

IEnumerable<TSource>

IEnumerable<T>,其中包含來源序列中的獨特項目。

例外狀況

sourcenull

備註

這個方法是使用延後執行來實作。 立即傳回值是一個物件,會儲存執行動作所需的所有資訊。 除非直接呼叫其 GetEnumerator 方法或在 C# 或 foreachFor Each Visual Basic 中使用 來列舉物件,否則不會執行這個方法所代表的查詢。

方法 DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) 會傳回不含重複值的未排序序列。 預設相等比較子 Default 是用來比較值。

另請參閱

適用於

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

來源:
Distinct.cs
來源:
Distinct.cs
來源:
Distinct.cs

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

public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
 static System::Collections::Generic::IEnumerable<TSource> ^ DistinctBy(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, TKey> ^ keySelector, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public static System.Collections.Generic.IEnumerable<TSource> DistinctBy<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TKey> keySelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
static member DistinctBy : seq<'Source> * Func<'Source, 'Key> * System.Collections.Generic.IEqualityComparer<'Key> -> seq<'Source>
<Extension()>
Public Function DistinctBy(Of TSource, TKey) (source As IEnumerable(Of TSource), keySelector As Func(Of TSource, TKey), comparer As IEqualityComparer(Of TKey)) As IEnumerable(Of TSource)

類型參數

TSource

source 項目的類型。

TKey

要區分元素的索引鍵類型。

參數

source
IEnumerable<TSource>

要移除重複項目的序列。

keySelector
Func<TSource,TKey>

用來擷取各項目之索引鍵的函式。

comparer
IEqualityComparer<TKey>

用來比較金鑰的 IEqualityComparer<T>

傳回

IEnumerable<TSource>

IEnumerable<T>,其中包含來源序列中的獨特項目。

例外狀況

sourcenull

備註

這個方法是使用延後執行來實作。 立即傳回值是一個物件,會儲存執行動作所需的所有資訊。 除非直接呼叫其 GetEnumerator 方法或在 C# 或 foreachFor Each Visual Basic 中使用 來列舉物件,否則不會執行這個方法所代表的查詢。

方法 DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) 會傳回不含重複值的未排序序列。 如果 為 comparernull ,則會使用預設相等比較子 Default 來比較值。

另請參閱

適用於