歡迎您光臨本站 註冊首頁

JAVA中集合框架一些常用類的總結

←手機掃碼閱讀     火星人 @ 2014-03-09 , reply:0

個人認為總的來說,map不是地圖是映射的意思,所以裡面是鍵值成對存在的,list的清單的意思,所以裡面是一項一項列出來的,set是集合的意思,所以裡面不能有重複的(數學裡面的集合裡面不能有重複元素)
一個總的介面是collection,下面兩個介面list和set都是繼承了collection,要注意的是這裡三個概念都是介面,而arraylist等才是他們的實現類.下面一個圖摘抄自ibm的教程,可以看出集合介面的繼承關係


介面實現歷史集合類
Set HashSet
TreeSet
List ArrayList Vector
LinkedList Stack
Map HashMap Hashtable
TreeMap Properties
上圖顯示了每個介面的實現類,應當注意的是,map不是collection的子介面.
1.Collection 介面是一組允許重複的對象.
2.Set 介面繼承 Collection,但不允許重複.
3.List 介面繼承 Collection,允許重複,並引入位置下標.
4.Map 介面既不繼承 Set 也不繼承 Collection.
Iterator有三個方法,hasnext():boolean; next():object;remove():void
方法可由底層集合有選擇的支持.當底層集合調用並支持該方法時,最近一次 next() 調用返回的元素就被除去.為演示這一點,用於常規 Collection 的 Iterator 介面代碼如下:
Collection collection = …;
Iterator iterator = collection.iterator();
while (iterator.hasNext())
{
Object element = iterator.next();
if
(removalCheck(element))
{
iterator.remove();
}
}
集的使用示例
為演示具體 Set 類的使用,下面的程序創建了一個 HashSet,並往裡添加了一組名字,其中有個名字添加了兩次.接著,程序把集中名字的列表列印出來,演示了重複的名字沒有出現.接著,程序把集作為 TreeSet 來處理,並顯示有序的列表.
import java.util.*;public class SetExample
{
public static void main(String args[])
{
Set set = new HashSet();
set.add("Bernadine");
set.add("Elizabeth");
set.add("Gene");
set.add("Elizabeth");
set.add("Clara");
System.out.println(set);
Set sortedSet = new TreeSet(set);
System.out.println(sortedSet);
}
}
運行程序產生了以下輸出.請注意重複的條目只出現了一次,列表的第二次輸出已按字母順序排序.
[Gene, Clara, Bernadine, Elizabeth][Bernadine, Clara, Elizabeth, Gene]


[火星人 ] JAVA中集合框架一些常用類的總結已經有328次圍觀

http://coctec.com/docs/java/show-post-59922.html