Android - Realm如何获取值

Android - Realm How to get value

我正在尝试获取我保存在 Realm 中的值,但我不知道该怎么做。该值始终为空。但是当我调试代码时,该值如下图所示:

Note: BookMarkActive & idBookMark has the proper value in the selected line but below does not appear anything.

如何获取值?

看一下与图片中相同的代码:

public String UpdateBookMarks(String id){
    Realm realm = Realm.getInstance(_context);
    RealmQuery<Bookmark> query = realm.where(Bookmark.class);
    query.equalTo("IdBookMark", id);
    Bookmark stationDetails = query.findFirst();
    if(stationDetails.getBookMarkActive() == "true"){
        stationDetails.setIdBookMark("false");
        return "Station has been removed from your bookmark list.";
    }else if (stationDetails.getBookMarkActive() == "false"){
        stationDetails.setIdBookMark("true");
        return "Station has been added to your bookmark list.";
    }
    return "Error";
}

书签class:

@RealmClass
public class Bookmark extends RealmObject {
    private java.lang.String IdBookMark;
    private String BookMarkActive;

    public String getIdBookMark() {
        return IdBookMark;
    }

    public void setIdBookMark(String idBookMark) {
        IdBookMark = idBookMark;
    }

    public String getBookMarkActive() {
        return BookMarkActive;
    }

    public void setBookMarkActive(String bookMarkActive) {
        BookMarkActive = bookMarkActive;
    }
}

Note: Realm version 'io.realm:realm-android:0.87.2'

对于 Realm 管理的 RealmObject,您不能信任 Android Studio 中的调试视图。它们只是存储在本机内存中的真实底层数据的代理对象。这意味着该字段将仅显示字段的默认值:0 表示 intnull 表示 String 和引用。

您可以在此处阅读更多相关信息:http://realm.io/docs/java/latest/#debugging