集合_集合類概述

集合的由來

數(shù)組長度是固定,如果要改變數(shù)組的長度需要創(chuàng)建新的數(shù)組將舊數(shù)組里面的元素拷貝過去,使用起來不方便。

java給開發(fā)者提供了-些集合類,能夠存儲任意長度的對象,長度可以隨著元素的增加而增加隨著元素的減少而減少,使用起來方便- -些。

集合繼承體系圖

java提供了一-些集合類,這些集合類分別適用于不同的場景,下面是常用的一-些集合基礎(chǔ)體系圖。


里面的Collection是接口,下面的List、Set、 Queue也都是接口,并且繼承了這個Collection。最下面的ArrayList、LinkedList、 Vector、 HashSet、 TreeSet、 PriorityQueue都是他們的實現(xiàn)類。

集合類的一些特點

List:里面存放的數(shù)據(jù)是有順序的,可以存放重復(fù)的數(shù)據(jù)。

Set:里面存放的數(shù)據(jù)是沒有順序的,不能存放重復(fù)的數(shù)據(jù)。

Queue:是- -個隊列,里面的數(shù)據(jù)是先進(jìn)先出,可以存放重復(fù)的數(shù)據(jù)。

數(shù)組和集合的區(qū)別

????區(qū)別1:

????????■數(shù)組既可以存儲基本數(shù)據(jù)類型又可以存儲引用數(shù)據(jù)類型基本數(shù)據(jù)類型存儲的是值引用數(shù)據(jù)類型存儲的是地址值

????????■集合只能存儲引用數(shù)據(jù)類型(對象),如果存儲基本數(shù)據(jù)類型時,會自動裝箱變成相應(yīng)的包裝類

????■區(qū)別2:

????????■數(shù)組長度是固定的,不能自動增長

????????■集合的長度的是可變的,可以根據(jù)元素的增加而自動增長


public class Col lectionTest01 {

????public static void main (String[] args) {

????????????Collection C = new ArrayList() ;

????????????c.add("a") ;

????????????c.add("b") ;

????????????c.add("C") ;

????????????c.add("d") ;

????????????/ /獲取集合的大小

????????????System. out.println(c.size()) ;

????????????System. out.println(c) ; / /在ArrayList的爺爺類AbstractCollection中重寫的tostring方法

????????????C.remove ("b") ;

????????????/ /System. out.println(c) ;

? ??????????//將集合轉(zhuǎn)換為數(shù)組,然后進(jìn)行遍歷

????????????object[] 0 = C. toArray() ;

????????????for (int i=0; i<o. length; i++) {

????????????System. out. println(o[i]) ;

}

? ? ? ? ? ? ?/ /清空集合里面的元素

? ? ? ? ? ? ? ?c.clear() ;

????????????/ /System. out.println(C) ;

? ? ? ? ? ?//判斷集合中是否包含傳入的元素

? ? ? ? ? ?System. out. println (C. contains ("b")) ;

? ?????????//判斷集合里面是否有元素

? ? ? ? ? ?Sys tem. out. println (C. isEmpty());

}

}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第四天 數(shù)組【悟空教程】 第04天 Java基礎(chǔ) 第1章數(shù)組 1.1數(shù)組概念 軟件的基本功能是處理數(shù)據(jù),而在處理數(shù)...
    Java幫幫閱讀 1,678評論 0 9
  • 一、為什么會出現(xiàn)集合類 1.集合是一個容器,為了方便的對多個對象進(jìn)行操作。 2.集合容器同數(shù)組容器的...
    大禹編程扛把子閱讀 671評論 0 0
  • DAY 05 1、 public classArrayDemo { public static void mai...
    周書達(dá)閱讀 822評論 0 0
  • 第十天 權(quán)限修飾符 public protected default private 同一類 true true ...
    炙冰閱讀 605評論 0 1
  • 目錄 [TOC] 第一章:數(shù)據(jù)結(jié)構(gòu)基礎(chǔ) 1.1-什么是數(shù)據(jù)結(jié)構(gòu) ? 數(shù)據(jù)結(jié)構(gòu)就是計算機(jī)存儲、組織數(shù)據(jù)的方式 。...
    雷噠噠閱讀 184評論 0 1

友情鏈接更多精彩內(nèi)容