RealmSwift: Convert Results to Swift Array

前端 未结 11 1854
[愿得一人]
[愿得一人] 2020-12-12 15:50

What I want to implement:

class func getSomeObject() -> [SomeObject]? {
    let objects = Realm().objects(SomeObject)

    return objects.count > 0 ? o         


        
11条回答
  •  感动是毒
    2020-12-12 16:22

    it's not a good idea to convert Results to Array, because Results is lazy. But if you need try this:

    func toArray(ofType: T.Type) -> [T] {
        return flatMap { $0 as? T }
    }
    

    but better way is to pass Results wherever you need. Also you can convert Results to List instead of Array.

    List(realm.objects(class))
    

    if the first func is not working you can try this one:

    var refrenceBook:[RefrenceProtocol] = []
    let faceTypes = Array(realm.objects(FaceType))
    refrenceBook = faceTypes.map({$0 as FaceType})
    

提交回复
热议问题