1.單列集合collection
list集合
(arraylist、linkedlist、vector
(不常用))
1特點: 有序,有索引,可重複
2遍歷方法:1.普通for
2.轉陣列
3.迭代器
4.增強for
set集合(用自定類時 需要在類中重寫hashcode和equals方法)
(hashset、linkedhashset(有序)、treeset)
1 特點: 無序,無索引,不可重複
2遍歷方法:1.轉陣列
2.迭代器
3.增強for
2. 常用方法
增
public
boolean
add(e)
刪
public
void
clear()
public
boolean
remove
(e)
改
public object[
]toarray()
public t[
]toarray
()
查
public
intsize()
public
boolean
isempty
()
1.獲取迭代器物件//使用 集合物件名.iterator()方法 獲取迭代器
iterator
it = c.
iterator()
;
2.使用迭代器方法it.hasnext(); //是否存在下乙個元素 迭代器物件名.hasnest
e e = it.next(); //獲取下乙個元素 迭代器物件名.next
案例
//建立物件
collection
a =newarraylist
();//新增資料
a.add
("hello");
a.add
("world");
a.add
("good");
//獲取迭代器
iterator
it = c.
iterator()
;//迴圈遍歷迭代器 快捷鍵 itit+回車
while
(it.
hasnext()
)
3.增強for迴圈 (快捷鍵 集合名稱.for)
案列展示
//建立物件
collection
c =newarraylist
();/
// /新增資料
c.add
("hello");
c.add
("world");
c.add
("god");
//增強for
for(string s : c)
1使用泛型的好處a.提前檢查(執行時可能出現的型別轉換異常,提前到編譯時是否通過)
b.簡潔**(不需要手動向下轉型,快捷鍵直接提示出來型別)
2泛型應用場景a.泛型類
a.定義格式:
//定義未知不具體型別
修飾符 class 類名稱《泛型》
b.使用格式:
(建立物件)
//使用已知具體型別
類名稱《具體型別》 物件名稱 =
new 類名稱《具體型別》()
;b.泛型方法
a.定義格式:
//定義未知不具體型別
修飾符 《泛型》 返回值 方法名稱 (引數)
b.使用格式:
(呼叫方法)
//使用已知具體型別
具體返回值型別 返回值 = 方法名稱(具體引數)
; c.泛型介面
a.定義格式:
修飾符 inte***ce 介面名稱《泛型》
b.使用格式:
(實現類或者建立實現類物件時候)
//使用已知具體型別
第一種:修飾符 class 類名稱 implements 介面名稱《具體型別》
//使用已知具體型別
第二種:類名稱《具體型別》 物件名稱 =
new 類名稱《具體型別》()
;d.泛型萬用字元
a.含義: 不知道使用什麼資料型別的時候,泛型可以使用 ?
b.格式: collection<
?> 可以傳遞各種泛型型別的物件
例如: 這些都可以傳遞 collection
collection
collection
c.高階使用: (number是integer的父類)
collection<
?extends
number
> 只能接收 number型別以及子類型別. (專業術語"泛型的上限")
collection<
?super number> 只能接收 number型別以及父類型別. (專業術語"泛型的下限")
案例
//編寫乙個泛型方法,接收乙個任意引用型別的陣列,並反轉陣列中的所有元素
public
class
test4
; string[
] b=
; system.out.
println
(arrays.
tostring
(method
(b)));
system.out.
println
(arrays.
tostring
(method
(a)));
}private
static
mmethod
(m m)
return m;
}}
java泛型集合
首先我們先來了解什麼是集合 集合就是用來組織和管理物件。集合特點 1.集合儲存的只能是物件 2.使用物件的引用,物件的儲存還是在堆記憶體中 3.儲存不同型別的資料 眾所周知,集合可以儲存不同型別的資料,而對於不同型別而言就會涉及到型別轉換,所以但是集合而言就會存在型別轉換問題,所以我們引用了泛型,使...
Java集合框架基礎 List泛型
list泛型 假設以下類都已經匯入了需要的包,假設已經定義了乙個課程類course具有id,name兩個屬性與各方法。list泛型的新增 public class listgeneric 新增方法 public void addlist list泛型的遍歷 public class listgene...
java集合與泛型
1.泛型 表示集合中 儲存資料的型別 建立乙個集合 儲存 a b c d 字串 後面的尖括號 要跟前面填的泛型 保持一致 如果前面宣告了泛型 後面泛型可以省略不寫 省略不寫 表示型別一致 arraylist string list new arraylist list add a list add ...