Enumerable.IntersectBy 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
根據指定的索引鍵選取器函式,產生兩個序列的集合交集。 |
IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>) |
根據指定的索引鍵選取器函式,產生兩個序列的集合交集。 |
IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>)
- 來源:
- Intersect.cs
- 來源:
- Intersect.cs
- 來源:
- Intersect.cs
根據指定的索引鍵選取器函式,產生兩個序列的集合交集。
public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::IEnumerable<TSource> ^ IntersectBy(System::Collections::Generic::IEnumerable<TSource> ^ first, System::Collections::Generic::IEnumerable<TKey> ^ second, Func<TSource, TKey> ^ keySelector, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public static System.Collections.Generic.IEnumerable<TSource> IntersectBy<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> first, System.Collections.Generic.IEnumerable<TKey> second, Func<TSource,TKey> keySelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
static member IntersectBy : seq<'Source> * seq<'Key> * Func<'Source, 'Key> * System.Collections.Generic.IEqualityComparer<'Key> -> seq<'Source>
<Extension()>
Public Function IntersectBy(Of TSource, TKey) (first As IEnumerable(Of TSource), second As IEnumerable(Of TKey), keySelector As Func(Of TSource, TKey), comparer As IEqualityComparer(Of TKey)) As IEnumerable(Of TSource)
類型參數
- TSource
輸入序列之項目的類型。
- TKey
要識別專案的索引鍵類型。
參數
- first
- IEnumerable<TSource>
傳回其獨特項目同時出現在 second
中的 IEnumerable<T>。
- second
- IEnumerable<TKey>
傳回其獨特項目同時出現在第一個序列中的 IEnumerable<T>。
- keySelector
- Func<TSource,TKey>
用來擷取各項目之索引鍵的函式。
- comparer
- IEqualityComparer<TKey>
用來比較金鑰的 IEqualityComparer<T>。
傳回
序列,其中包含形成兩個序列之交集的項目。
例外狀況
first
或 second
為 null
。
備註
此方法是使用延後執行來實作。 立即傳回值是物件,可儲存執行動作所需的所有資訊。 除非直接在 GetEnumerator
C# 或 Visual Basic 中使用 foreach
來列舉對象,否則 For Each
不會執行這個方法所表示的查詢。
兩個集合 A 和 B 的交集定義為集合,其中包含也出現在 B 中的所有 A 元素,但沒有其他元素。
列舉這個方法所傳回的物件時,Intersect
會產生兩個序列中出現的不同元素,其出現在的順序。first
如果 comparer
為 null
,則會使用 預設相等比較子 Default來比較值。
另請參閱
適用於
IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>)
- 來源:
- Intersect.cs
- 來源:
- Intersect.cs
- 來源:
- Intersect.cs
根據指定的索引鍵選取器函式,產生兩個序列的集合交集。
public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::IEnumerable<TSource> ^ IntersectBy(System::Collections::Generic::IEnumerable<TSource> ^ first, System::Collections::Generic::IEnumerable<TKey> ^ second, Func<TSource, TKey> ^ keySelector);
public static System.Collections.Generic.IEnumerable<TSource> IntersectBy<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> first, System.Collections.Generic.IEnumerable<TKey> second, Func<TSource,TKey> keySelector);
static member IntersectBy : seq<'Source> * seq<'Key> * Func<'Source, 'Key> -> seq<'Source>
<Extension()>
Public Function IntersectBy(Of TSource, TKey) (first As IEnumerable(Of TSource), second As IEnumerable(Of TKey), keySelector As Func(Of TSource, TKey)) As IEnumerable(Of TSource)
類型參數
- TSource
輸入序列之項目的類型。
- TKey
要識別專案的索引鍵類型。
參數
- first
- IEnumerable<TSource>
傳回其獨特項目同時出現在 second
中的 IEnumerable<T>。
- second
- IEnumerable<TKey>
傳回其獨特項目同時出現在第一個序列中的 IEnumerable<T>。
- keySelector
- Func<TSource,TKey>
用來擷取各項目之索引鍵的函式。
傳回
序列,其中包含形成兩個序列之交集的項目。
例外狀況
first
或 second
為 null
。
備註
此方法是使用延後執行來實作。 立即傳回值是物件,可儲存執行動作所需的所有資訊。 除非直接在 GetEnumerator
C# 或 Visual Basic 中使用 foreach
來列舉對象,否則 For Each
不會執行這個方法所表示的查詢。
兩個集合 A 和 B 的交集定義為集合,其中包含也出現在 B 中的所有 A 元素,但沒有其他元素。
列舉這個方法所傳回的物件時,Intersect
會產生兩個序列中出現的不同元素,其出現在的順序。first
默認相等比較子 Default是用來比較值。