加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

arrays – 如何从数组中删除与另一个数组中的元素匹配的元素

发布时间:2020-12-14 04:47:26 所属栏目:百科 来源:网络整理
导读:如何从数组中删除与另一个数组中的元素匹配的元素? 假设我们有一个数组,我们遍历它并找出要删除的元素: var sourceItems = [ ... ]var removedItems = [SKShapeNode]()for item : SKShapeNode in sourceItems { if item.position.y self.size.height { rem
如何从数组中删除与另一个数组中的元素匹配的元素?

假设我们有一个数组,我们遍历它并找出要删除的元素:

var sourceItems = [ ... ]
var removedItems = [SKShapeNode]()

for item : SKShapeNode in sourceItems {
    if item.position.y > self.size.height {
        removedItems.append(item)
        item.removeFromParent()
    }
}

sourceItems -= removedItems // well that won't work.

解决方法

您可以使用过滤功能.

let a = [1,2,3]
let b = [2,3,4]

let result = a.filter { element in
    return !b.contains(element)
}

结果将是[1]

或者更简洁……

let result = a.filter {!b.contains($0)}

查看Swift Standard Library Reference

或者您可以使用Set类型.

let c = Set<Int>([1,3])
let d = Set<Int>([2,4])
c.subtract(d)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读