相关疑难解决方法(0)

如何在Swift中获取2个数组的常用元素列表?

我有两个数组:

fruitsArray = ["apple", "mango", "blueberry", "orange"]
vegArray = ["tomato", "potato", "mango", "blueberry"]
Run Code Online (Sandbox Code Playgroud)

如何获得这两个数组中的常用项列表

ouptput = ["mango", "blueberry"]
Run Code Online (Sandbox Code Playgroud)

我无法使用,if contains(array, string)因为我想比较2个数组.

arrays swift

28
推荐指数
4
解决办法
3万
查看次数

如何在目标C中交叉两个数组?

我有两个数组.Array1包含15个对象,Array2包含4个对象.两个数组都有两个常见的对象,我只想得到那两个对象的结果数组.

它应该像两个Set的交集,但是如何在Objective C中为数组做..?请帮忙.谢谢.

iphone intersection objective-c nsmutablearray nsmutableset

19
推荐指数
1
解决办法
1万
查看次数

Swift中数组,集合和字典的区别

我是Swift Lang的新手,看过很多教程,但目前还不清楚 - 我的问题是Array,SetDictionary集合类型之间的主要区别是什么?

arrays collections dictionary set swift

18
推荐指数
3
解决办法
2万
查看次数

Set(Collection) - 插入多个元素

Set是一系列独特元素的无序集合.几乎与数组类似.

我想在一个Set中添加/插入多个元素String.但是只提供了一种方法,只能插入一个元素(接受单个Set元素作为参数参数),我收集了字符串(id).

插入(_:)

@discardableResult mutating func insert(_ newMember: Set.Element) -> (inserted: Bool, memberAfterInsert: Set.Element)
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

我尝试过:
我尝试创建一个非常类似于insert(_:)方法的扩展,但它可以接受多个Set元素.它与使用迭代而不是集合相同,但不需要在任何地方手动处理它.

extension Set {

    @discardableResult mutating func insert(_ newMembers: [Set.Element]) -> (inserted: Bool, memberAfterInsert: Set.Element) {

        newMembers.forEach { (member) in
            self.insert(member)
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

它应该工作,如果我按预期返回一个元组但不知道如何以及在哪里(哪一行)以及返回值的内容.

这是错误消息.

期望返回的函数中缺少返回'(inserted:Bool,memberAfterInsert:Set.Element)'

在此输入图像描述

什么可以解决这个问题.是否有更好的解决方案/方法来处理此操作?

tuples set ios swift swift-extensions

14
推荐指数
3
解决办法
5372
查看次数

Swift - 确定Array1是否包含Array2中的至少一个对象

我有2个阵列.说,array1 = [1,2,3,4,5]array2 = [2,3].如果array1包含至少一个项目,我怎么能检查swift array2

arrays arraylist ios swift

8
推荐指数
3
解决办法
4167
查看次数

Swift - 用于通过成员数组的属性过滤数组的谓词

我需要过滤掉一组MyClass3对象.MyClass2对象的数组是MyClass3对象的成员(请参阅下面的代码).MyClass2对象有一个id.我手边有一个idArray.我需要过滤掉那些MyClass3对象,其中idArray中的所有id都存在于其[MyClass2]成员中.

class MyClass2 : NSObject {
    var uid: Int = 0

    init(uid : Int) {
        self.uid = uid
    }
}

class MyClass3 : NSObject {
    var arr: [MyClass2]

    init(units: [MyClass2]) {
        arr = units
    }
}

var units1 = [MyClass2(uid: 1),MyClass2(uid: 2), MyClass2(uid: 3), MyClass2(uid: 4), MyClass2(uid: 5)]
var units2 = [MyClass2(uid: 4),MyClass2(uid: 5), MyClass2(uid: 6)]
var units3 = [MyClass2(uid: 3),MyClass2(uid: 5), MyClass2(uid: 7), MyClass2(uid: 1)]

var ids = [1,5]

var available3: [MyClass3] = [MyClass3(units: units1), MyClass3(units: units2), MyClass3(units: units3)] …
Run Code Online (Sandbox Code Playgroud)

array-filter nspredicate ios swift

4
推荐指数
1
解决办法
1万
查看次数

Swift - 性能明智 - 比较两个数组并获得每个数组的差异和两个数组的共同点

希望您度过愉快的一天。

我试图了解执行以下操作的最快方法是什么:

假设我有这两个Arrays

var firstArray = ["a","b","c"]
var secondArray = ["a","d","e"]
Run Code Online (Sandbox Code Playgroud)

我想得到以下输出:

1)位于 内部但不位于 中Array的对象。 1)位于 内部但不位于 中的对象。 3)和之间的共同对象。 firstArray secondArray
Array secondArray firstArray
ArrayfirstArraysecondArray

所以基本上输出是:

1) ["b","c"]
2) ["d","e"]
3)["a"]

这里的主要问题是了解什么是最有效的方法。非常感谢!

arrays sorting performance ios swift

2
推荐指数
1
解决办法
2879
查看次数

如何删除数组中的一个重复值?

我有两个数组,我正在比较[Int]

let filter = strongAgainstArray.filter{weakAgainstArray.contains($0)}
Run Code Online (Sandbox Code Playgroud)

这将返回2个数组中的公共值数组.然后我想通过并从每个数组中删除这些值,我正在这样做

for item in filter {
    for var i = 0; i < strongAgainstArray.count; i += 1 {
        if item == strongAgainstArray[i] {
            strongAgainstArray.removeAtIndex(i)
            print("Removing a Strong against index \(item)")
        }
    }
    for var i = 0; i < weakAgainstArray.count; i += 1 {
        if item == weakAgainstArray[i] {
            weakAgainstArray.removeAtIndex(i)
            print("Removing a Weak against index \(item)")
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这工作正常,但我们可以说我的一个数组包含两个条目12作为示例.我如何只删除其中一个?目前,所有条目12都被完全删除.

编辑

我现在正在比较我的两个数组

let commonValues = Array(Set(strongAgainstArray).intersect(weakAgainstArray))

然后是commonValues每个数组中的那些

cleanStrongAgainstArray = …
Run Code Online (Sandbox Code Playgroud)

ios swift

0
推荐指数
1
解决办法
76
查看次数