Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/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
Swift 获取数组中除“0”以外的所有值;x";价值迅捷3_Swift - Fatal编程技术网

Swift 获取数组中除“0”以外的所有值;x";价值迅捷3

Swift 获取数组中除“0”以外的所有值;x";价值迅捷3,swift,Swift,我是IOS编程新手。我有一个问题,如何获得数组中除x值以外的所有值。假设我有如下数组: let array : [Any] = [1,2,3,4,5,6,7,8,9,0,11,22,33,44,55,66,77,200] 如何打印除1和2以外的所有值 我已经读过,它使用的是过滤器,我在游乐场上尝试过,但我仍然没有正确的值。任何回答对我都有帮助。提前感谢。我不知道您为什么将数组定义为[Any],所以我刚刚删除了它,数组是:- let数组=[1,2,3,4,5,6,7,8,9,0,11,22,33

我是IOS编程新手。我有一个问题,如何获得数组中除x值以外的所有值。假设我有如下数组:

let array : [Any] = [1,2,3,4,5,6,7,8,9,0,11,22,33,44,55,66,77,200]
如何打印除1和2以外的所有值


我已经读过,它使用的是
过滤器
,我在游乐场上尝试过,但我仍然没有正确的值。任何回答对我都有帮助。提前感谢。

我不知道您为什么将数组定义为
[Any]
,所以我刚刚删除了它,数组是:-

let数组=[1,2,3,4,5,6,7,8,9,0,11,22,33,44,55,66,77200]

接下来,您可以使用
过滤器
,如下所示:-

let filtered=array.filter{(元素)->Bool-in
返回元素!=1&&element!=2
}

你可以在操场上测试,它会打印除1和2之外的所有值

您还可以为
filter
使用一些语法糖,如下所示:-

array.filter({return$0!=1&&$0!=2})

由于闭包是一个尾随参数,您还可以将其与参数分开,如下所示:-

array.filter{return$0!=1&$0!=2}

另一种方法是

让filtertheout=[1,2]

let anotherWay=array.filter{!filtertheout.contains($0)}


因此,在这里,您基本上可以将要过滤掉的所有元素添加到一个单独的数组中

我不知道您为什么将该数组定义为
[Any]
,因此我刚刚删除了该数组,该数组是:-

let数组=[1,2,3,4,5,6,7,8,9,0,11,22,33,44,55,66,77200]

接下来,您可以使用
过滤器
,如下所示:-

let filtered=array.filter{(元素)->Bool-in
返回元素!=1&&element!=2
}

你可以在操场上测试,它会打印除1和2之外的所有值

您还可以为
filter
使用一些语法糖,如下所示:-

array.filter({return$0!=1&&$0!=2})

由于闭包是一个尾随参数,您还可以将其与参数分开,如下所示:-

array.filter{return$0!=1&&$0!=2}

另一种方法是

让filtertheout=[1,2]

let anotherWay=array.filter{!filtertheout.contains($0)}


因此,您基本上可以在单独的数组中添加要过滤掉的所有元素

无需过滤器使用此选项:

for i in array {
 if i != 1 && i != 2 {
 print i
 }
}

//这将打印除1和2之外的所有值。无需使用此过滤器:

for i in array {
 if i != 1 && i != 2 {
 print i
 }
}

//这将打印除1和2之外的所有值。您可以这样做

let array : [Int] = [1,2,3,4,5,6,7,8,9,0,11,22,33,44,55,66,77,200]

print(array.filter { $0 != 1 && $0 != 2 } )
或者,如果您将有超过1或2个值,则可以将它们放入数组中

let array : [Int] = [1,2,3,4,5,6,7,8,9,0,11,22,33,44,55,66,77,200]
let unwantedValues = [1,2]
print(array.filter { unwantedValues.contains($0) == false } )

下次请粘贴您的代码,这样可以更容易地告诉您做错了什么,然后为您提供现成的解决方案。

您可以这样做

let array : [Int] = [1,2,3,4,5,6,7,8,9,0,11,22,33,44,55,66,77,200]

print(array.filter { $0 != 1 && $0 != 2 } )
或者,如果您将有超过1或2个值,则可以将它们放入数组中

let array : [Int] = [1,2,3,4,5,6,7,8,9,0,11,22,33,44,55,66,77,200]
let unwantedValues = [1,2]
print(array.filter { unwantedValues.contains($0) == false } )

下次请粘贴您的代码,这样可以更容易地告诉您做错了什么,然后为您提供现成的解决方案。

过滤器显示您的示例代码
,该过滤器不起作用。您的数组不是
[任何]
,它是
[Int]
。不要注释编译器可以推断的类型。在许多情况下,像这样的情况会使情况变得更糟。使用不起作用的
过滤器显示示例代码您的数组不是
[Any]
,而是
[Int]
。不要注释编译器可以推断的类型。在很多像这样的情况下,你会使情况变得更糟。谢谢,我以前尝试过使用loop
for
,这对我来说很有用。但现在我想知道是否使用过滤器。您的答案比其他人更好我有一个问题,
$0
的含义是什么?如果一个闭包包含参数,但您不希望命名这些参数,您可以将其称为$0、$1等。如果您能接受我看到的答案,我将不胜感激。检查5分钟。谢谢,我现在明白了。谢谢,我以前试过在
中使用loop
,这对我来说很有用。但现在我想知道是否使用过滤器。您的答案比其他人更好我有一个问题,
$0
的含义是什么?如果一个闭包包含参数,但您不希望命名这些参数,您可以将其称为$0、$1等。如果您能接受我看到的答案,我将不胜感激。检查5分钟。谢谢我现在明白了谢谢,我想我的问题很清楚。但下次我会的。再次感谢汉克斯,我想我的问题很清楚。但下次我会的。再次感谢