Java--容器/集合類(Collection)理解和使用
阿新 • • 發佈:2018-12-20
、陣列和集合的比較
陣列:長度固定,用來存放基本型別的資料
集合:長度不固定,用來存放物件的引用
二、集合類的基本概念
1.java.util包中提供了一些集合類,這些集合類也被稱為容器。
常用的集合有List集合、Set集合、Map集合,他們的關係繼承如下:
2.Collection介面:
Collection<String> list = new ArrayList<>()
常用方法:
方法 | 功能描述 |
add(E e) | 將指定的物件新增到該集合中 |
remove(Object o) | 將指定的物件從該集合中刪除 |
isEmpty() | 判斷當前集合是否為空,返回boolean型 |
iterator() | 迭代器,用於遍歷集合中的物件 |
size() | 獲取集合中的元素,返回int值 |
3.List介面:(有序,可以用索引來訪問元素,包含重複物件)
(1)ArrayList是可變的陣列,允許儲存所以的元素,速度較慢
(2)LinkedList便於插入和刪除物件
List<E> list = new ArrayList<>()
List<E> list = new LinkedList<>() {E為資料型別,如果不懂的話看上一篇講泛型的隨筆}
其他兩個常用方法;
方法 | 功能描述 |
get(int index) | 獲得指定索引位置的元素 |
set(int index, Object obj) | 將指定位置元素修改為指定物件 |
4.Set集合:(無序,不包含重複物件)
TreeSet<E> tree = new TreeSet<>()
其他兩個常用方法;
方法 | 功能描述 |
first() | 返回此set中第一個元素 |
last() | 返回此set中最後一個元素 |
5.Map介面:(沒有繼承Collection介面,提供key到value的對映,不能包含相同的key,且每一個key只能對映一個value)
Map<E, E> map = new HashMap<>(); <E, E>指的是key和value的資料型別。
方法 | 功能描述 |
put(K key, V value) | 向集合中新增key和value的對映關係 |
get(Object key) | 如果存在指定的key物件,則返回該物件對應的value,否則返回null |
keyset() | 返回集合中所有key物件形成的set集合 |
values() | 返回集合中所有value形成的Collection集合 |