Map.findKey<'Key,'T> 関数 (F#)
更新 : 2010 年 8 月
コレクション内の各マッピングで関数を評価し、関数が true を返す最初のマッピングのキーを返します。 そのような要素が存在しない場合、この関数は KeyNotFoundException を発生させます。
名前空間/モジュール パス: Microsoft.FSharp.Collections.Map
アセンブリ: FSharp.Core (FSharp.Core.dll 内)
// Signature:
Map.findKey : ('Key -> 'T -> bool) -> Map<'Key,'T> -> 'Key (requires comparison)
// Usage:
Map.findKey predicate table
パラメーター
例外
例外 |
状態 |
---|---|
マップ内にキーが存在しない場合にスローされます。 |
戻り値
述語が true に評価される最初のキー。
解説
この関数は、コンパイルされたアセンブリでは FindKey という名前です。 F# 以外の言語から、またはリフレクションを使用してこの関数にアクセスする場合は、この名前を使用します。
使用例
次の例は、Map.findKey を使用する方法を示しています。
let findKeyFromValue findValue map =
printfn "With value %A, found key %A." findValue (Map.findKey (fun key value -> value = findValue) map)
let map1 = Map.ofList [ (1, "one"); (2, "two"); (3, "three") ]
let map2 = Map.ofList [ for i in 1 .. 10 -> (i, i*i) ]
try
findKeyFromValue "one" map1
findKeyFromValue "two" map1
findKeyFromValue 9 map2
findKeyFromValue 25 map2
// The key is not in the map, so the following line throws an exception.
findKeyFromValue 0 map2
with
:? System.Collections.Generic.KeyNotFoundException as e -> printfn "%s" e.Message
出力
プラットフォーム
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
参照
その他の技術情報
Microsoft.FSharp.Collections 名前空間 (F#)
履歴の変更
日付 |
履歴 |
理由 |
---|---|---|
2010 年 8 月 |
コード例を追加。 |
情報の拡充 |