遇到java.util.ConcurrentModificationException

今天犯了一个简单的错:

List<Book> books = adapter.data;
for(Book book: books){
    if(book.id == bookId){
        books.remove(book);
    }
}
结果遇到java.util.ConcurrentModificationException,起初以为是Android里操作不在同一线程的UI的问题,其实没那么复杂,只是犯了一个常见的Java错误。改为下面即可:
List<Book> books = .;
Book deletedBook = ;
(Book book: books){
    (book.== bookId){
        deletedBook = book;
        ;
    }
}
books.remove(deletedBook);


原文地址:https://www.cnblogs.com/xiuquan/p/5084357.html