集合框架
是為表示和操作集合而規定的一種統一的標準的體系結構。任何集合框架都包含三大塊內容:對外的介面、介面的實現和對集合運算的演算法。
collection 介面
collection物件是將多個元素組成乙個單元的物件
集合用於儲存、檢索和操縱資料
集合框架是用於表示和操縱集合的統一體系結構
集合框架的優點
提供有用的資料結構和演算法,從而減少程式設計工作
提高了程式速度和質量,
因為它提供了高效能的資料結構和演算法
允許不同 api
之間的互操作,
api之間可以來回傳遞集合
可以方便地擴充套件或改寫集合
常用集合介面
list介面
特點: 有序的集合;允許重複
常見實現類:arraylist
、linkedlist,vector
set介面
特點: 不允許重複
常見實現類:hashset
、treeset
map介面
特點: 用於儲存鍵/
值對映關係
常見實現類:hashmap
、hashtable
、properties
泛型泛型提供了乙個可以對集合使用型別引數來指定元素的型別如:
arraylistlist = new arraylist();
注意:
1、泛型的型別引數只能是引用型別,不能是基本資料型別。泛型的使用2、泛型的型別引數可以有多個。
3、泛型的引數型別可以使用
extends
、super語句
4、泛型的引數型別還可以是萬用字元(
?)型別。
public class couple
public t getfirst()
public void setfirst(t first)
public t getsecond()
public void setsecond(t second)
}
public class coupletest
}
map遍歷
@test
public void test7()
//第二種:通過map.entryset使用iterator遍歷key和value:
iterator> it = map.entryset().iterator();
while (it.hasnext())
//第三種:推薦,尤其是容量大時
system.out.println("通過map.entryset遍歷key和value");
for (entryentry : map.entryset())
//第四種:通過map.values()遍歷所有的value,但不能遍歷key"
for (integer v : map.values())
}
演示建立map
集合,給集合新增元素,根據
key獲取元素的值
@test
public void test()
向set
集合中新增資料時,如果資料已經存在,資料新增不進去,但在
map中,如果鍵已經存在,會把原來對應的鍵的值覆蓋
@test
public void test4()
泛型和map集合
1 泛型 jdk1.5出現的安全機制 好處 1 將執行時期的問題classcastexception轉換為編譯時期。2 避免了強制轉換的麻煩 什麼時候用?當操作的引用資料型別不確定的時候,就使用 將要操作的引用資料型別傳入即可,其實 就是乙個用於接收具體引用資料型別的引數範圍。泛型技術是給編譯器使用...
泛型和Map集合總結
1 泛型類 在寫容器之前想要容器中要存什麼?所以要先寫好泛型 eg treesetts new treeset 有了泛型後就不要強轉 eg public class person implementscomparator 對於下面覆蓋的它的compare方法就不用強制轉換了。public int c...
泛型 Map集合 day18
第十八天 泛型 map集合 1.泛型的出現 程式的安全性 安全問題由執行時期,提前到了編譯時期 jdk1.5 以後出現的 jdk1.5版本,是乙個里程碑式的公升級 程式的公升級 安全性效率 的減少 避免了強制型別轉換 2.泛型的定義和使用 資料型別 強制集合只能儲存一種資料型別 什麼時候使用泛型 當...