对于String中的SubList

List中的subList方法返回的SubList对象

对于String中的SubList

查看源码会发现其并没有自己持有一份subList后的数据,而是保留了一份list的引用,以及modCount。

当使用subList方法后,如果对list再进行修改操作,这时候list的modCount修改数会增加,并不会同步到SubList对象中,

如果此时操作SubList对象,会调用checkForComdification方法

对于String中的SubList

对比之后发现modCount不一样,就会抛出并发修改异常!

而如果单单修改SubList对象,会同步一遍modCount!