Lặp lại trên ArrayList, các lớpHashMaplà một số ví dụ về Trình lặp nhanh không thành công. … Điều này là do, chúng hoạt động trên bản sao của bộ sưu tập, không phải trên bộ sưu tập gốc và đó là lý do tại sao chúng được gọi là trình lặp an toàn không thành công. Lặp lại trên các lớp CopyOnWriteArrayList, ConcurrentHashMap là các ví dụ về Iterator an toàn không thành công.
Trình lặp có an toàn không trong Java không?
Trình lặp trong Java được sử dụng để duyệt qua các đối tượng của tập hợp. Các bộ sưu tập trả về hai loại trình lặp, hoặcnó sẽ là Không nhanh hoặc Không an toàn. Các trình lặp Fail Fast ngay lập tức ném ConcurrentModificationException trong trường hợp sửa đổi cấu trúc của bộ sưu tập.
Không an toàn và không nhanh trong Java là gì?
Không-An toàn. 1. Ngoại lệ. Bất kỳ thay đổi nàotrong bộ sưu tập, chẳng hạn như thêm, xóa và cập nhật bộ sưu tập trong một chuỗi đang lặp lại bộ sưu tập sau đó không thể ném nhanh ngoại lệ sửa đổi đồng thời. Bộ sưu tập không an toàn không có ngoại lệ.
Trình lặp danh sách có nhanh không?
Các trình vòng lặpđược trả vềbởi trình vòng lặp ArrayList và các phương thức listIterator không nhanh: nếu danh sách được sửa đổi cấu trúc bất kỳ lúc nào sau khi trình vòng lặp được tạo, theo bất kỳ cách nào ngoại trừ thông qua các phương thức xóa hoặc thêm của chính trình lặp, trình lặp sẽ ném ra một ngoại lệ ConcurrentModificationException.
ArrayList có nhanh không?
Lặp lại của ArrayList bị lỗi nhanh, vì vậy trong khi bạnlặp lại ArrayList bằng cách sử dụng Iterator nếu ArrayList bên dưới được sửa đổi bằng bất kỳ phương thức nào khác ngoài việc thêm và xóa do chính Iterator cung cấp, nó sẽ ném ra ConcurrentModificationException và sẽ giải cứu.