Java_集合—Collection和Iterator

集合篇:

Java_Collection_集合

Java_集合—Collection和Iterator

Java_集合—List

Java_集合—Set

Java_集合—Map

Java_集合的工具類—Collections


從集合的體系圖上我們可以看到,List 和  Set 集合都是繼承自 Collection 的,由此可以看出。Collection是除Map集合以外所有集合的祖宗。由此可見它的重要性。集合,有別於其他容器類,集合有自己特殊的遍歷方式,就是使用 Iterator(迭代器)去遍歷集合。可見,Iterator 也是在集合中是很重要的。

這節就來講講Collection 和 Iterator 接口

既然兩個都是接口,接口既不能new對象,裏面定義的方法也是空的,所以沒什麼好講的,就來講講這兩個集合中的方法有什麼作用以及使用;

先來看Collection中有什麼方法:


Collection下面的子類常用的方法就有這些。代碼中註釋寫的比較明白,不必要過多的解釋了。


下面來說說Iterator,Iterator就比較簡單了,看代碼


一眼看上去,也就3個,沒錯,就是3個,其中最常用的的

這個remove有什麼用呢?我用collection中的remove就好啦,幹嘛要用這玩意?你考慮過沒有?
這就涉及到安全性的問題了,如果你同時對一個幾個遍歷和刪除的操作,刪除了之後是不是集合的元素就少了,但你的Iterator是在刪除之前獲取的啊,刪除前後使用同一個迭代器,你覺得不會出問題麼?儘管可以去試試。正是因爲這個安全性的問題,所以這裏的在遍歷集合的時候要刪除元素一定要用iterator倆面的remove,而不是用collection裏面的remove。

然後來看看Iterator的具體用法


上面這兩種使用方式,從功能上來講。是沒什麼區別的,都實現了對集合的遍歷

不同的是:方式一執行完畢後Iterator對象還是存在於內存中的,而方式二是不存在的,這就涉及到了局部變量和全局變量的區別了


這一節就說到這裏。





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章