Ben*_*Ben 4 java android iterator realm
我有一个RealmResults<Section>,有一个RealmList<Event>是我想清楚每一节现场.
我试过了(insude mRealm.executeTransaction)
for (Section section : mSections) {
section.getEvents().clear();
}
Run Code Online (Sandbox Code Playgroud)
和
Iterator<Section> sectionIterator = mSections.iterator();
while (sectionIterator.hasNext()) {
sectionIterator.next().getEvents().clear();
}
Run Code Online (Sandbox Code Playgroud)
但是Realm抛出了这个例外
java.util.ConcurrentModificationException:迭代RealmResults时不允许对Realm进行外部更改.请改用迭代器方法.
由于您实际上并未删除正在迭代的元素,因此您可以使用传统的for循环:
for (int i = 0; i < mSections.size(); i++) {
mSections.get(i).getEvents().clear();
}
Run Code Online (Sandbox Code Playgroud)
请注意,如果您确实需要使用a删除元素Iterator,则需要remove()在Iterator自身上使用该方法.
| 归档时间: |
|
| 查看次数: |
3530 次 |
| 最近记录: |