Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
List F#布尔列表检查列表中的1个元素是否为真_List_F# - Fatal编程技术网

List F#布尔列表检查列表中的1个元素是否为真

List F#布尔列表检查列表中的1个元素是否为真,list,f#,List,F#,我有一个布尔值列表,我想检查列表中的1个元素是否为真。我的程序的工作方式是,每当创建布尔列表时,它只有一个真值,或者根本没有真值 你知道我该怎么做吗?你可以用它来查看列表中是否有真实的值: let containsTrue = theBoolList |> List.contains true 如果需要只检查一个真值,则可以在列表上方对其进行计数: let fn count item = if item then (count + 1) else count let numberOfTr

我有一个布尔值列表,我想检查列表中的1个元素是否为真。我的程序的工作方式是,每当创建布尔列表时,它只有一个真值,或者根本没有真值

你知道我该怎么做吗?

你可以用它来查看列表中是否有真实的值:

let containsTrue = theBoolList |> List.contains true
如果需要只检查一个真值,则可以在列表上方对其进行计数:

let fn count item = if item then (count + 1) else count
let numberOfTrue = theBoolList |> List.fold fn 0

let onlyOneTrue = numberOfTrue = 1

你在问什么?如何检查特定位置的项目值或如何确定任何项目是否为真?此外,检查是否应确保只有一个
true
而不是更多?嗨,对不起,我认为我的逻辑可能有点错误。您可以添加一段代码,执行相同的操作,但如果发现false,则返回false。我试图更改您的代码,以便它查找false,但如果找到它,它将返回true。@JacksonSentzke如果所有元素均为true,则返回true,如果任何元素均为false,则返回false?对需求做一个新的问题可能是有意义的,因为它和这个问题非常不同。。。(如果你在这里发布链接,我会在那里回复)@JacksonSentzke或询问:)我们可以更轻松地讨论你的要求。是的,对不起,我只是在我将你的代码放入我的程序后才意识到我的错误。
让exactlyOneTrue bools=List.filter id bools=[true]