Tôi gặp sự cố khi xóa các phần tử của danh sách trong khi lặp qua danh sách. Mã số:Tự động xóa các phần tử khỏi Danh sách
For (WebElement element: list){
if (!element.isEnabled() || !element.isSelected()){
list.remove(element);
}
}
Tôi nhận được ConcurrentModificationException
, mà tôi hoàn toàn hiểu. Tôi đang xóa một mục khỏi danh sách trong khi trong vòng lặp đi qua danh sách. Trực giác, điều đó sẽ làm hỏng việc lập chỉ mục của vòng lặp.
Câu hỏi của tôi là, cách khác, tôi nên xóa các phần tử không phải là enabled
hoặc selected
khỏi danh sách này?
Tôi không biết liệu nó có nhất thiết phải dễ nhất hay không. 'remove()' là một phần chức năng tùy chọn trên giao diện 'Iterator'. Cũng cần lưu ý rằng 'remove()' nằm trên 'Iterator ' và chỉ được thừa kế bởi 'ListIterator '. –
corsiKa