我们如何从Swift 2.2中获取Element的元素

jig*_*iya 4 set ios swift

这是我的目标 FTContent

class FTContent: NSManagedObject { 
    @NSManaged var content_id: String // Primary key
    @NSManaged var title: String
}
Run Code Online (Sandbox Code Playgroud)

在我的课堂上,我有一个保持FTContent元素的Set

var mySet: Set<FTContent>
Run Code Online (Sandbox Code Playgroud)

一些操作后mySet包含5个元素FTContent

现在我想要元素(FTContent) mySet 如何从集合中获取元素?

Mar*_*n R 9

A Set是a Collection,你可以简单地迭代它的元素:

for elem in mySet {
    print(elem)
}
Run Code Online (Sandbox Code Playgroud)

或通过下标访问:

for idx in mySet.indices {
    let elem = mySet[idx]
    print(elem)
}
Run Code Online (Sandbox Code Playgroud)

但请注意,集合中元素的顺序是未指定的(如果插入或删除元素,则可以更改).因此,您可能希望将其排序数组,例如:

// Swift 2.2:
let allElements = mySet.sort({ $0.content_id < $1.content_id })

// Swift 3:
let allElements = mySet.sorted(by: { $0.content_id < $1.content_id } )
Run Code Online (Sandbox Code Playgroud)