所以我正在尝试将Realm List实现到我的类中,但是,我在Realm.io找到的文档并没有说明它是否需要getter / setter以及它是否应该看起来应该是什么样子喜欢。所以这是我的代码:
public class Novel extends RealmObject {
@PrimaryKey
private static int id;
@Required
private static String name;
//Establish relationship with Novel (single) and Chapter (many)
private RealmList<Chapter> chapters;
public static int getId() {
return id;
}//end getId
public static void setId(int id) {
Novel.id = id;
}//end setId
public static String getName() {
return name;
}//end getName
public static void setName(String name) {
Novel.name = name;
}//end setName
}//end Novel.class
为了在Realm Database中存储对象,所有变量都必须具有getter / setter。但是,由于我使用RealmList
,如何正确构造我的getter / setter?
这是Android Studio给我的代码,但它看起来不正确。
public RealmList<Chapter> getChapters() {
return chapters;
}
public void setChapters(RealmList<Chapter> chapters) {
this.chapters = chapters;
}
getter看起来没问题,然而,setter对我如何正确使用RealmList
毫无意义。
tldr :为了在自定义对象中正确实现RealmList
,我的getter / setter应该是什么?
答案 0 :(得分:0)
RealmList
实现了所有有用的接口:
java.lang.Iterable<E>, java.util.Collection<E>, java.util.List<E>
如果您要将新的Chapter
添加到Novel
使用代码,类似于:
Chapter chapter = realm.copyToRealm(new Chapter());
novel.getChapters().add(chapter);
如果您想用新的章节替换所有章节:
RealmList<Chapter> chapters = new RealmList<Chapter>();
chapters.add(new Chapter());
chapters.add(new Chapter());
chapters.add(new Chapter());
chapters.add(new Chapter());
chapters = realm.copyToRealm(chapters);
novel.setChapters(chapters);