2016-11-08 66 views
0

我想在swift中创建2维数组的链表,并想知道这是否可能。到目前为止,我有三个主要类。其目的是让其他类在应用程序打开时运行,但每天只运行一次。Swift 3.0中的2D阵列的链接列表

但是试图用一个二维数组填充链表时,发生一个错误,说明

类型“[[字符串]]”不符合协议“Equatable”

let arrayList = LinkedList<[[String]]>() 
+0

的可能重复:[上嵌套数组夫特相等运算](http://stackoverflow.com/questions/33377761/swift-equality-operator-on-nested-arrays)。 –

回答

0

字符串数组阵列不符合Equatable Protocol,所以LinkedList无法使用它。它需要这个能够在列表中进行搜索和插入。

一个解决将创建具有[[字符串]]类型的成员,并且符合Equatable的类。

class UberArray: Equatable{ 
    fileprivate var array:[[String]] = [[]] 

    static func==(first:UberArray, second:UberArray)->Bool 
    { 
    //whatever logic makes sense for your use case 
    //to compare to UberArray(s) 
    return false 
    } 
}