更新時間:2019-12-20 14:37:38 來源:動力節(jié)點 瀏覽2341次
一、集合的由來
通常,我們的程序需要根據(jù)程序運行時才知道創(chuàng)建多少個對象。但若非程序運行,程序開發(fā)階段,我們根本不知道到底需要多少個數(shù)量的對象,甚至不知道它的準確類型。為了滿足這些常規(guī)的編程需要,我們要求能在任何時候,任何地點創(chuàng)建任意數(shù)量的對象,而這些對象用什么來容納呢?我們首先想到了數(shù)組,但是數(shù)組只能放統(tǒng)一類型的數(shù)據(jù),而且其長度是固定的,那怎么辦呢?集合便應(yīng)運而生了!
二、集合是什么?
Java集合類存放于 java.util 包中,是一個用來存放對象的容器。
注意:①、集合只能存放對象。比如你存一個 int 型數(shù)據(jù) 1放入集合中,其實它是自動轉(zhuǎn)換成 Integer 類后存入的,Java中每一種基本類型都有對應(yīng)的引用類型。
②、集合存放的是多個對象的引用,對象本身還是放在堆內(nèi)存中。
?、邸⒓峡梢源娣挪煌愋停幌迶?shù)量的數(shù)據(jù)類型。
三、Java 集合框架圖
發(fā)現(xiàn)一個特點,上述所有的集合類,除了 map 系列的集合,即左邊集合都實現(xiàn)了 Iterator 接口,這是一個用于遍歷集合中元素的接口,主要hashNext(),next(),remove()三種方法。它的一個子接口 ListIterator 在它的基礎(chǔ)上又添加了三種方法,分別是 add(),previous(),hasPrevious()。也就是說如果實現(xiàn) Iterator 接口,那么在遍歷集合中元素的時候,只能往后遍歷,被遍歷后的元素不會再被遍歷到,通常無序集合實現(xiàn)的都是這個接口,比如HashSet;而那些元素有序的集合,實現(xiàn)的一般都是 LinkedIterator接口,實現(xiàn)這個接口的集合可以雙向遍歷,既可以通過next()訪問下一個元素,又可以通過previous()訪問前一個 元素,比如ArrayList。
還有一個特點就是抽象類的使用。如果要自己實現(xiàn)一個集合類,去實現(xiàn)那些抽象的接口會非常麻煩,工作量很大。這個時候就可以使用抽象類,這些抽象類中給我們提供了許多
現(xiàn)成的實現(xiàn),我們只需要根據(jù)自己的需求重寫一些方法或者添加一些方法就可以實現(xiàn)自己需要的集合類,工作量大大降低。
以上就是動力節(jié)點Java培訓(xùn)機構(gòu)小編介紹的“Java培訓(xùn)教程:Java集合詳解”的內(nèi)容,希望對大家有幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。
相關(guān)文章
零基礎(chǔ)怎么自學(xué)Java,完整版Java學(xué)習(xí)路線圖
相關(guān)閱讀
初級 202925
初級 203221
初級 202629
初級 203743