Android Iterator 使用

yangjunjin發表於2020-12-15

1、Map迴圈刪除符合調條件的物件

在Map中直接刪除內容將丟擲 java.util.ConcurrentModificationException 異常,如果要刪除可以用Iterator的remove()方法。 

Iterator iterator = eventValues.keySet().iterator();
while (iterator.hasNext()) {
    String key = (String) iterator.next();
    if (key.equals(GIOUtil.KEY_CHANNEL)) {
        iterator.remove();
        eventValues.remove(key);
    }
}

2、使用Map刪除資料

 Iterator<DataBean> iterator = data.iterator();
    while (iterator.hasNext()) {
        DataBean current = iterator.next();
        if(current.getVideoWidth() > current.getVideoHeight()){
            iterator.remove();
        }
    }

 

相關文章