Enumerable.DistinctBy 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
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<T>,其中包含來源序列中的獨特項目。
例外狀況
source
為 null
。
備註
這個方法是使用延後執行來實作。 立即傳回值是一個物件,會儲存執行動作所需的所有資訊。 除非直接呼叫其 GetEnumerator
方法或在 C# 或 foreach
For 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<T>,其中包含來源序列中的獨特項目。
例外狀況
source
為 null
。
備註
這個方法是使用延後執行來實作。 立即傳回值是一個物件,會儲存執行動作所需的所有資訊。 除非直接呼叫其 GetEnumerator
方法或在 C# 或 foreach
For Each
Visual Basic 中使用 來列舉對象,否則不會執行這個方法所代表的查詢。
方法 DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) 會傳回不含重複值的未排序序列。 如果 為 comparer
null
,則會使用預設相等比較子 Default來比較值。