这是非常基本的,但我无法找到如何使用Swift从Realm数据库中获取类型的所有对象.是的是的:
var dogs = try! Realm().objects(Dog)
Run Code Online (Sandbox Code Playgroud)
但是如果我想事先声明并初始化dog变量并稍后将对象加载到其中呢?喜欢:
var dogs = ???
dogs = realm.objects(Dog)
Run Code Online (Sandbox Code Playgroud)
在这种情况下,变量狗的类型应该是什么?
Realm.objects(_:) 有以下签名:
public func objects<T: Object>(type: T.Type) -> Results<T>
Run Code Online (Sandbox Code Playgroud)
签名告诉您,当您调用函数时realm.objects(Dog),返回类型将是Results<Dog>.
如果您希望声明变量并稍后在同一函数中对其进行初始化,则可以简单地将声明与初始化分开,如下所示:
let dogs: Results<Dog>
// …
dogs = realm.objects(Dog)
Run Code Online (Sandbox Code Playgroud)
如果要声明成员变量并需要在之后对其进行初始化init,则应将其声明为可选并使用var:
var dogs: Results<Dog>?
// …
dogs = realm.objects(Dog)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4931 次 |
| 最近记录: |