次の方法で共有


List.exists2<'T1,'T2> 関数 (F#)

更新 : 2010 年 5 月

リストの対応する要素のペアが、指定された述語を満たすかどうかをテストします。

名前空間/モジュール パス: Microsoft.FSharp.Collections.List

アセンブリ: FSharp.Core (FSharp.Core.dll 内)

// Signature:
List.exists2 : ('T1 -> 'T2 -> bool) -> 'T1 list -> 'T2 list -> bool

// Usage:
List.exists2 predicate list1 list2

パラメーター

  • predicate
    型: 'T1 -> 'T2 -> bool

    入力要素をテストする関数。

  • list1
    型: 'T1 list

    最初の入力リスト。

  • list2
    型: 'T2 list

    2 番目の入力リスト。

戻り値

要素のすべてのペアが述語を満たす場合は true。 それ以外の場合は、false を返します。

解説

述語は、長さが短い方のコレクションの終わりに達するまで、2 つのコレクションの一致する要素に適用されます。 いずれかの適用結果として true が返された場合、全体の結果は true になり、残りの要素はテストされません。

この関数は、コンパイルされたアセンブリでは Exists2 という名前です。 F# 以外の .NET 言語から、またはリフレクションを使用してこの関数にアクセスする場合は、この名前を使用します。

使用例

List.exists2 の使用方法を次のコード例に示します。

// Use List.exists2 to compare elements in two lists.
// isEqualElement returns true if any elements at the same position in two supplied
// lists match.
let isEqualElement list1 list2 = List.exists2 (fun elem1 elem2 -> elem1 = elem2) list1 list2
let list1to5 = [ 1 .. 5 ]
let list5to1 = [ 5 .. -1 .. 1 ]
if (isEqualElement list1to5 list5to1) then
    printfn "Lists %A and %A have at least one equal element at the same position." list1to5 list5to1
else
    printfn "Lists %A and %A do not have an equal element at the same position." list1to5 list5to1

出力

  

プラットフォーム

Windows 7、Windows Vista SP2、Windows XP SP3、Windows XP x64 SP2、Windows Server 2008 R2、Windows Server 2008 SP2、Windows Server 2003 SP2

バージョン情報

F# ランタイム

サポート対象: 2.0、4.0

Silverlight

サポート: 3

参照

その他の技術情報

Collections.List モジュール (F#)

Microsoft.FSharp.Collections 名前空間 (F#)

履歴の変更

日付

履歴

理由

2010 年 5 月

コード例を追加。

情報の拡充