这是我的Android应用程序中的一些代码:
public class Offer extends RealmObject {
@PrimaryKey
private long id;
}
在我的服务课程中:
RealmList<Offer> currentLocalMerchantOfferList = currentLocalMerchant.getOffers();
RealmList<Offer> findIncomingMerchantOfferList = findIncomingMerchant.getOffers();
if (!EqualsUtil.areEqual(currentLocalMerchantOfferList, findIncomingMerchantOfferList)) {
currentLocalMerchant.setOffers(findIncomingMerchantOfferList == null ? null : realm.copyToRealmOrUpdate(findIncomingMerchantOfferList));
}
我收到
compile
错误:error: incompatible types: bad type in conditional expression
currentLocalMerchant.setOffers(findIncomingMerchantOfferList == null ? null : realm.copyToRealmOrUpdate(findIncomingMerchantOfferList));
我是否正确使用
copyToRealmOrUpdate
?如果没有,您如何正确使用它? 最佳答案
realm.copyToRealmOrUpdate(findIncomingMerchantOfferList)
返回List<T>
而不是RealmList<T>
。
RealmList将many-relationship
表示为另一种对象类型。因此,这些随机插入的对象不是多关系,因此它们不是RealmList。
实际上,它们在内部作为ArrayList
返回。
更改代码以使其适应的方式是:
currentLocalMerchant.getOffers().clear();
currentLocalMerchant.getOffers().addAll(realm.copyToRealmOrUpdate(findIncomingMerchantOfferList));