您好,登錄后才能下訂單哦!
這篇文章主要介紹“什么是Collection接口”,在日常操作中,相信很多人在什么是Collection接口問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”什么是Collection接口”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
從JDK1.2開始,Java中引入了類集開發框架,所謂的類集指的是一套動態對象數組的實現方案,在實際開發中,沒有任何一項開發可以離開數組,但是傳統的數組實現起來非常的繁瑣,而且長度是其致命傷,正是因為長度問題,所以傳統的數組是不可能大范圍使用的,但是開發又離不開數組,所以最初就只能依靠一些數據結構來實現動態的數組處理,而其中最為重要的兩個結構:鏈表、樹。但是面對這些數據結構的實現,又不得不面對如下的一些問題:
數據結構的代碼實現困難,對于一般的開發者是無法進行使用的;
對于鏈表或二叉樹當進行更新處理的時候,維護是非常麻煩的;
對于鏈表或二叉樹還需要盡可能保證其操作的性能;
正是因為這樣的原因,所以從JDK1.2開始Java引入了類集,主要就是對常見的數據結構進行完整的實現包裝,并提供了一系列的接口與實現子類,來幫助用戶減少數據結構所帶來的開發困難。但是最初的類集實現由Java本身的技術所限,所以對于數據的控制并不嚴格,全部采用了Object類型進行數據接收,而在JDK1.5后由于泛型將技術的推廣,所以類集本身也得到了良好的改進,可以直接利用泛型來保存相同類型的數據,并且隨著數據量的不斷增加,從JDK1.8開始類集的實現算法也得到了良好的性能提升。
在整個類集框架中,提供了如下幾個核心接口:Collection、List、Set、Map、Iterator、Enumeration、Queue、ListIterator。
java.util.Collection是單值集合操作的最大的父接口,在該接口中定義有所有的單值數據的處理操作,這個接口中定義了如下的核心操作方法:
No. | 方法名稱 | 類型 | 描述 |
---|---|---|---|
01 | public boolean add(E e) | 普通 | 向集合保存數據 |
02 | public boolean addAll(Collection<? extends E> c) | 普通 | 追加一組數據 |
03 | public void clear() | 普通 | 清空集合,讓根節點為空,同時執行GC處理 |
04 | public boolean contains(Object o) | 普通 | 查詢數據是否存在,需要equals()方法支持 |
05 | public boolean remove(Object o) | 普通 | 數據刪除,需要equals()方法支持 |
06 | public int size() | 普通 | 獲取數據長度,最大值為Integer.MAX_VALUE |
07 | public Object[] toArray() | 普通 | 將集合變為對象數組返回 |
08 | public Iterator<E> iterator() | 普通 | 將集合變為Iterator接口返回 |
在進行集合操作時,有兩個方法最為常用:【增加】add()、【輸出】iterator()。
在JDK1.5版本之前,Collection只是一個獨立的接口,但是從JDK1.5后,提供了Iterable父接口,并且在JDK1.8后針對于Iterable接口也得到了一些擴充。另外,在JDK1.2~JDK1.4的時代里面,如果要進行集合的使用往往會直接操作Collection接口,但是從JDK1.5時代開始更多的情況下選擇的都是Collection的兩個子接口:允許重復的List子接口、不允許重復的Set子接口;
到此,關于“什么是Collection接口”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。