Share via


Map.filter<'Key,'T> Function (F#)

Creates a new map containing only the bindings for which the given predicate returns true.

Namespace/Module Path: Microsoft.FSharp.Collections.Map

Assembly: FSharp.Core (in FSharp.Core.dll)

// Signature:
Map.filter : ('Key -> 'T -> bool) -> Map<'Key,'T> -> Map<'Key,'T> (requires comparison)

// Usage:
Map.filter predicate table

Parameters

  • predicate
    Type: 'Key -> 'T ->bool

    The function to test the key/value pairs.

  • table
    Type: Map<'Key,'T>

    The input map.

Return Value

The filtered map.

Remarks

This function is named Filter in compiled assemblies. If you are accessing the function from a language other than F#, or through reflection, use this name.

Example

The following code shows how to use Map.filter.

printfn "Even numbers and their squares." 
let map1 = Map.ofList [for i in 1 .. 10 -> (i, i*i)]
           |> Map.filter (fun key _ -> key % 2 = 0)
           |> Map.iter (fun key value -> printf "(%d, %d) " key value)
printfn ""

Output

Even numbers and their squares.
(2, 4) (4, 16) (6, 36) (8, 64) (10, 100) 

Platforms

Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Version Information

F# Core Library Versions

Supported in: 2.0, 4.0, Portable

See Also

Reference

Collections.Map Module (F#)

Microsoft.FSharp.Collections Namespace (F#)