AbstractCollection中toArray()方法的疑惑

先看toArray()方法的源碼: 首先創建了一個和該集合當前size大小一致的數組,然後以數組的長度爲指標進行for循環向數組中添加元素(注意:並不是遍歷迭代器哦)。爲什麼不是遍歷迭代器? 1.如果有多個線程操作該集合,其中某個線程向集合中添加了元素,此時如果在迭代器的遍歷中向數組中添加元素,則會拋出數組越界異常。 2.可能你會說,每次添加之前可以判斷下r.length和size()的大小,si
相關文章
相關標籤/搜索