F#是否具有判断列表是否包含特定值的功能?

vik*_*ata 5 f# contain

Haskell有"elem"谓词来表达:

Prelude> 5 `elem` [2,4..10]
False
Run Code Online (Sandbox Code Playgroud)

在F#中,如何方便地判断值是在列表,数组,seq或map还是字典中?

Bit*_*ler 9

在F#中它是

List.contains <element> <list>
Run Code Online (Sandbox Code Playgroud)

例:

List.contains 5 [2..2..10]
Run Code Online (Sandbox Code Playgroud)

- >

val it : bool = false
Run Code Online (Sandbox Code Playgroud)

contains 也为其他容器类型定义.


Gus*_*Gus 7

您可以使用:

List.exists ((=) 5) [1..5]
Run Code Online (Sandbox Code Playgroud)

或者如其他答案中所建议的那样,List.contains如果你有最新的F#版本,请直接.

相同的功能可用Seq.