2012-08-06 47 views
3

在調試中eclispse收藏我只是檢查有一個名爲modCount的,例如,如果我們調試名單,而在調試一下這個modCount的代表...檢查,我們將看到的東西!請指教modCount的在地圖和列表

回答

2

它是用於在迭代集合時檢測對集合的修改的計數器:迭代器快速失敗,並且如果迭代期間集合已被修改,則會引發異常。 modCount用於跟蹤修改。僅供參考,標準類的來源是JDK的一部分,您可以閱讀它們以瞭解標準類如何工作。

+0

感謝很多哥們,請您告訴我從哪裏下載pdf格式的所有api信息爲jdk 1.6請分享網址下載,在此先感謝 – user1579492 2012-08-06 17:38:33

+0

... PDF格式? Javadoc生成網頁,而不是PDF,最好以該格式閱讀。 – 2012-08-06 17:39:48

6

,查看javadoc

的時候這個名單已經結構修飾數。 結構修改是那些改變列表大小,或以其他方式干擾它的迭代正在進行中可能產生不正確結果的方式。

此字段由iterator和listIterator方法返回的迭代器和列表迭代器實現使用。如果此字段的值意外更改,則迭代器(或列表迭代器)將響應下一個,刪除,上一個,設置或添加操作而引發ConcurrentModificationException。這提供了故障快速行爲,而不是在迭代期間併發修改中的非確定性行爲。

按子類使用此字段是可選的。如果一個子類希望提供快速迭代器(和列表迭代器),那麼它只需要在add(int,E)和remove(int)方法中增加這個字段(以及任何其他的方法來覆蓋結果中的結構修改列表)。添加(int,E)或remove(int)的單個調用必須在此字段中添加不超過一個,否則迭代器(和列表迭代器)將拋出僞造ConcurrentModificationExceptions。如果實現不希望提供快速迭代器,則該字段可能會被忽略。