【发布时间】:2017-09-29 07:14:18
【问题描述】:
我在数组中有数组,我需要在第二个数组中找到一些项目并删除父数组,但是当我尝试删除数组时出现错误 java.lang.IllegalStateException
productsList = new ArrayList<>(mSortModels);
for (ProductComponentsResponse component : filterData) {
String componentId = component.getId();
int componentState = component.getState();
Iterator<ProductResponse> iterator = productsList.iterator();
while (iterator.hasNext()) {
ProductResponse next = iterator.next();
for (ProductComponentsResponse productComponentsResponse: next.getProductComponents()) {
boolean containComponent = productComponentsResponse.getId().contains(componentId);
if (componentState == ProductComponentsResponse.FilterState.NONE) {
continue;
} else if (componentState == ProductComponentsResponse.FilterState.SELECTED) {
if (!containComponent) {
Log.d("component", String.valueOf(containComponent));
***iterator.remove();*** - this error line
}
} else if (componentState == ProductComponentsResponse.FilterState.UNSELECTED) {
if (containComponent) {
iterator.remove();
}
}
}
}
}
notifyDataSetChanged();
【问题讨论】:
-
您能更具体地说明错误吗?当时你的变量的状态是什么?你在哪一行得到错误? ..
-
请将此信息添加到问题中,而不是在评论中