程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> java集合基礎,java集合

java集合基礎,java集合

編輯:JAVA綜合教程

java集合基礎,java集合


集合概念與作用

 1現實生活中把很多事物湊在一起就是集合。java中的集合類:是一種工具,就像是容器,存儲任意數量的有共同屬性的對象。

 2在類的內部,對數據進行組織;

   簡單而快速的搜索大數量的條目

   有的集合借口,提供了一系列排列有序的元素,並且可以在序列中間快速的插入或者刪除有關元素。

    有的集合接口,提供了映射關系,可以通過關鍵字去快速查找到對應的唯一對象,而這個關鍵字是可以是任意類型。

3 Collection(List ,Queue,Set )

    1)List和Queue:排列有序的可以重復的

    2)Set:無序的

    3)常用的是List(序列),Set(集)

 

 

ArrayList HashSet HashMap三個比較常用

  List接口,有序可重復,可以精確的控制每個元素的插入位置,或刪除某個位置的元素

  ArrayList,數組序列,是List的一個重要實現,底層是有數組實現的。

  1)對象存入集合都會變成object類型,取出時需要類型轉換

  2)add()添加一個值

       add("位置","值")添加到指定位置(當位置的值大於當前最大值,則會出現異常(indexOutOfBoundsException)) 

       addAll(Arrays.asList(數組));

     Course[] course={new Course("2", "java"),new Course("3", "english")}; 

      coursesToSelsct.addAll(Arrays.asList(course));

  3)取得List中元素的方法

      先獲得List的長度,size()

      然後用get();

  

  通過迭代器遍歷List

迭代器不具備存儲功能,依賴於某個集合存在,不能單獨存在。還有另一種方法for each()

     Iterator it=coursesToSelect.Iterator()

     while(it.hashNext())

  {

    course cr=(course)it.next();    

  }

 

      for(Object obj:courseToSelect)//放入到集合中自動變成、object類型

      

    5)修改List中的元素Set(“索引位置”,“新元素”)方法

       

    6)刪除List中的元素remove()&removeAll()

        刪除前先同get(“位置”)獲取對應的元素,打印輸出

        remove((Course)courseToSelect.get("位置"))

   

  removeAll(),其中arraysList.asList()方法是用來把數組轉化為集合類型

       

      7)泛型,往集合中添加特定的類型的對象,會在編譯期間進行類型檢查,可以直接指定類型獲取集合元素(不需要進行類型轉換)

        public List<Course> course

     public TestGeneric(){

      this.course=new ArrayList<Course>();

    }

        泛型中可存入其子類型的對象實例

        泛型中的限定類型不能使用基本類型。

        List<int> list=new ArrayList<int>()-->錯的,int是基本類型

        List<Intger> list=new ArrayList<Integer>()

Set接口及其實現類--HashSet(沒有類似List提供Set()方法修改數據)

     1)set中沒有get()方法,只能用foreach,iterator方法遍歷出每一個數據,且執行兩次可能得到結果的順序不一致

     2)set集合無序,不可重復 。保存的是唯一獨有的一個數據對象引用,並且可以添加一個null

       

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved