ArrayList中removeAll和clear的区别(无区别)

removeAll会直接调用此方法,传入list和false,因中间的逻辑都不会走(如果由retainAll方法调用,则会走这些逻辑判断),所以只需要看finaly中的最后一个if条件,w=0,通过循环将数组中的值全部变为null,同时将数组的长度也设置为0
 

 

 

clear方法如下,故并没有区别,只有modCount的次数会不一样,clear的modCount次数会+1,而removeAll的modCount的次数会加list.size

 

posted @ 2019-06-14 15:50  沟渠映明月  阅读(1874)  评论(0编辑  收藏  举报