Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.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
Arrays 读取数组的第一个索引以检查布尔值_Arrays_Swift - Fatal编程技术网

Arrays 读取数组的第一个索引以检查布尔值

Arrays 读取数组的第一个索引以检查布尔值,arrays,swift,Arrays,Swift,这是一个非常基本的问题,但很抱歉,我找不到它的答案 在数组的第一个索引中,我有一个布尔值,我想检查它是否为真 我可以这么做 if myarray[0].isRunning == true { } 但这是不好的,但正如我所想,我可以用第一个索引,类似这样的: if myarray.firstIndex (where: {$0.isRunning == "true}) { } 但我有一个错误,我认为这不太正确,有人能教我如何使用firstIndex检查布尔值吗 谢谢您是否尝试过: If myar

这是一个非常基本的问题,但很抱歉,我找不到它的答案 在数组的第一个索引中,我有一个
布尔值
,我想检查它是否为真

我可以这么做

if myarray[0].isRunning == true {
}
但这是不好的,但正如我所想,我可以用第一个索引,类似这样的:

if myarray.firstIndex (where: {$0.isRunning == "true}) {
}
但我有一个错误,我认为这不太正确,有人能教我如何使用firstIndex检查布尔值吗

谢谢

您是否尝试过:

If myarray[0].isRunning.elementsEqual("true")
{

}

如果数组可以为空,这是一种安全的方法

if myarray.first?.isRunning == true {
或(同样安全)


如果数组从不为空,那么您的坏方法就是好的。

我认为您应该使用以下方法:

if myarray.first?.isRunning {
     //do something
}

如果试图检查数组中的第一项是否具有
isRunning==true的属性,请使用:

if myarray.first?.isRunning == true {

}
如果要获取数组中
isRunning
等于true的第一项:

if let i = myarray.firstIndex(where: { $0.isRunning == true }) {
    let obj = myarray[i]
    print("\(obj) is the first object where running is true.")
}

删除
“true
中的引号应该会有帮助……否则:显示
myarray
的定义方式,以及确切的错误消息。还要注意正确复制/粘贴代码,如果
使用大写的
I
,则肯定不是
if let i = myarray.firstIndex(where: { $0.isRunning == true }) {
    let obj = myarray[i]
    print("\(obj) is the first object where running is true.")
}