是否有Swift一线从数组中删除元素(如果存在)并追加(如果不存在)的元素?

Jam*_*ter 1 set-theory higher-order-functions swift

这是我遇到的很多东西。在Swift中有一种单行的好方法吗?

我可以为此编写一个扩展,但是我感觉好像有一种“显而易见的”高阶函数/集合理论技术正在被我所忽略。

if array.contains(element) {
    array.removeObject(object: element)
}
else {
    array.append(element)
}
Run Code Online (Sandbox Code Playgroud)

我认为解决方案本身并不一定会更好,这只是我每次必须编写此文件时都会考虑的事情。

Jam*_*ter 5

我发现集合论让我难以理解的部分!我想结果是对称差两个数组的,这包含在斯威夫特的设置

var element = Set([1])
var set = Set([1, 2, 3])

set = set.symmetricDifference(element) //2, 3
set = set.symmetricDifference(element) //1, 2, 3
Run Code Online (Sandbox Code Playgroud)