网站备案现状下载百度推广app
【面试:基础篇06:FailFast与FailSafe机制】
00.前言
有任何问题还请指出,感谢。
01.介绍:
迭代器进行迭代操作时是否可以修改被迭代对象 分为了 两种机制 一种是:FailFast机制,另一个是:FailSafe。
01.FailFast
FailFast机制是迭代器进行迭代操作时不可以修改被迭代对象,否则会抛出ConcurrentModificationException 译为 并发异常,主要的应用场景就是 多线程同时操作一个被迭代对象 为了保证数据的一致性 抛出异常。
02.FailFast
FailSafe机制是迭代器进行操作时可以修改被迭代对象,不会抛出异常 但迭代过程中 被迭代对象的值不变,迭代后改变被迭代对象。
02.代码
FailFast代码
ArrayList<Integer> L=new ArrayList<>();for (int i=0;i<5;i++) {L.add(i);}Iterator<Integer> it = L.iterator();while (it.hasNext()){int val = it.next();L.add(5