关于iterator的fail-fast

是使用集合的iterator后,再改变就可能抛出这个异常

 

The iterators returned by all of this class's "collection view methods" are fail-fast: if the map is structurally modified at any time after the iterator is created, in any way except through the iterator's own remove method, the iterator will throw a ConcurrentModificationException. Thus, in the face of concurrent modification, the iterator fails quickly and cleanly, rather than risking arbitrary, non-deterministic behavior at an undetermined time in the future. 

iterators是fail-fast的,如果这个集合(存在特定的某些集合,比如HashMap)在iterator创建之后在结构上又改变了(通 过任何方式除了iterator本身的remove方法),iterator就会抛ConcurrentModificationException。因 此,在使用过程中又面临同时被修改,iterator就会以又快速又干净地fail来应对,而不是在将来某个不确定的时间冒面临随机又不确定的表现之风险

你可能感兴趣的:(iterator)