Man*_*anu 8 java android realm
我正在创建一个Android应用程序,我需要坚持一个Map<String,MyClass>.我刚刚开始使用Realm ORM,因为它支持一对一和一对多的枚举和列表.我还找到了一个字符串列表的解决方法(即我必须创建一个封装字符串的StringWrapper类.但是,从我理解的文档中,没有简单的方法RealmMap,就像列表中发生的那样.所以,我正在寻找坚持地图的最佳方法.我目前的想法是用一个KeyValueObject封装了String(前一个地图键)和一个对象的对象列表替换我的地图MyClass.类似于Map.Entry.是否有任何其他解决方案不需要我重新编写域模型技术原因?
gei*_*irt 20
正如您所注意到的,Realm还不支持地图:https://github.com/realm/realm-java/issues/759
您可以使用模型类:
class MyData extends RealmObject {
private RealmList<MyMapEntry> myMap;
}
class MyMapEntry extends RealmObject {
private String key;
private MyClass value;
}
Run Code Online (Sandbox Code Playgroud)
假设您有一个MyData被调用的对象,myData并且您希望获取与之关联的值myKey,则该查询MyClass myClass = myData.getMyMap().where().equalTo("key", myKey).firstFirst()可能很有用.