列表<对象>或 RealmList<RealmObject> 在 Realm Android 上

2022-09-02 11:19:51

我需要一个使用 Realm。我试过了,但它不起作用,因为它是抽象的。list<Object>RealmList<RealmObject>RealmObject


答案 1

来自王国的基督徒在这里。您只能将扩展 Realm 对象的对象保存在 Realm 数据库内。这是因为 Realm 数据库不是一个无模式的数据库。我们确实需要一个模式,而这个模式是由扩展 RealmObject 的对象定义的。我们使用 RealmList 是因为它抽象化了与底层核心数据库的通信,但它实现了 List 接口。

这意味着

public class Foo extends RealmObject {
  private List<Object> objects;  // not legal
  private RealmList<Object> objects;  // not legal 
  private RealmList<RealmObject> objects; // not legal
}

public class Foo extends RealmObject {
  private RealmList<Foo> objects; // legal
}

List<Foo> reference = foo.getObjects(); // Legal

答案 2

推荐