1. 程式人生 > >Java集合框架List+Set+Map基本操作

Java集合框架List+Set+Map基本操作

一、List集合
 List的特徵是其元素以線性方式儲存,集合中可以存放重複物件。
 List介面主要實現類包括:
  ArrayList : 代表長度可以改變得陣列。可以對元素進行隨機的訪問,向ArrayList()中插入與刪除元素的速度慢。
  LinkedList: 在實現中採用連結串列資料結構。插入和刪除速度快,訪問速度慢。
  對於List的隨機訪問來說,就是隻隨機來檢索位於特定位置的元素。
  List 的 get(int index) 方法放回集合中由引數index指定的索引位置的物件,下標從“0” 開始。
最基本的兩種檢索集合中的所有物件的方法:
  1: 用for迴圈和get()方法:
  

 for(int i=0; i<list.size();i++){
  System.out.println(list.get(i));
  }

 
  2: 使用 迭代器(Iterator):
  

Iterator it=list.iterator();
  while(it.hashNext){
  System.out.println(it.next);
  }

  
 二、Set集合 
  存放的是物件的引用,沒有重複物件
  Set是最簡單的一種集合。集合中的物件不按特定的方式排序,並且沒有重複物件。
  Set介面主要實現了兩個實現類:
  HashSet

: HashSet類按照雜湊演算法來存取集合中的物件,存取速度比較快
  TreeSet : TreeSet類實現了SortedSet介面,能夠對集合中的物件進行排序。

    Set set=new HashSet();
  String s1=new String("hello");
  String s2=s1;
  String s3=new String("world");
  set.add(s1);
  set.add(s2);
  set.add(s3);
  System.out.println(set.size());//列印集合中物件的數目 為 2。
  //Set 的 add()方法是如何判斷物件是否已經存放在集合中?
  boolean isExists=false;   Iterator iterator=set.iterator();   while(it.hasNext()) {   String oldStr=it.next();   if(newStr.equals(oldStr)){   isExists=true;   }   }

三、Map集合
  Map 是一種把鍵物件和值物件對映的集合,它的每一個元素都包含一對鍵物件和值物件。有如下實現類:
  —HashMap
  —TreeMap
  — HashTable
 

  Map沒有繼承於Collection介面
  從Map集合中檢索元素時,只要給出鍵物件,就會返回對應的值物件。
  Map 的常用方法:
  1 新增,刪除操作:
  Object put(Object key, Object value): 向集合中加入元素
  Object remove(Object key): 刪除與KEY相關的元素
  void putAll(Map t): 將來自特定映像的所有元素新增給該映像
  void clear(): 從映像中刪除所有對映
  2 查詢操作:
  Object get(Object key): 獲得與關鍵字key相關的值
  Map集合中的鍵物件不允許重複,也就說,任意兩個鍵物件通過equals()方法比較的結果都是false.
  但是可以將任意多個鍵獨享對映到同一個值物件上。
  Conllections : 集合實用類
  Conllections提供了供JAVA集合實用的靜態方法
四、結束語
本文只是對於List、Set、Map三個集合初步瞭解,後續博文會對其進行深入的研究與探討。