1.Collection接口
1.集合可以理解为一个动态的对象数组,不同的是集合中的对象内容可以任意扩充。
2.集合特点:性能高,容易扩展和修改
3.Collection的常用子类:List,Set,Queue
一般用法
修饰符和类型 | 方法 | 说明 |
---|---|---|
boolean | add(E e) | 确保此集合包含指定的元素(可选操作)。 |
void | clear() | 从此集合中删除所有元素(可选操作)。 |
2.List接口(Collection接口的子接口)
1.List接口可以存放任意的数据,而且在List接口中内容是可以重复的
2.List接口常用子类:ArrayList,Vector
3.常用操作:
a.判断集合是否为空:boolean isEmpty()
b.查找指定的对象是否存在:int indexOf(Object o)
Interface List<E>
<E>指泛型
E指此列表中元素的类型
修饰符和类型 | 方法 | 说明 |
---|---|---|
boolean | add(E e) | 将指定的元素追加到此列表的末尾(可选操作)。 |
void | add(int index, E element) | 将指定的元素插入此列表中的指定位置(可选操作)。 |
void | clear() | 从此列表中删除所有元素(可选操作)。 |
boolean | isEmpty() | 如果此列表不包含任何元素,则返回true。 |
int | indexOf(Object o) | 返回指定元素在此列表中首次出现的索引;如果此列表不包含该元素,则返回-1。 |
E | remove(int index) | 删除此列表中指定位置的元素(可选操作)。 |
boolean | remove(Object o) | 如果存在指定元素,则从列表中删除该元素的第一次出现(可选操作)。 |
int | size() | 返回此列表中的元素数。 |
E | set(int index, E element) | 用指定的元素替换此列表中指定位置的元素(可选操作)。 |
E | get(int index) | 返回此列表中指定位置的元素。 |
ArrayList与Vector的区别
比较 | ArrayList | Vector |
---|---|---|
推出时间 | JDK1.2之后 | JDK1.0推出 |
性能 | 采用异步处理方式,性能高 | 采用同步处理方式。性能低 |
线程安全 | 属于非线程安全 | 属于线程安全 |
3.Set接口(Collection接口的子接口)
1.Set接口中不能加入重复元素,但是可以排序。
2.Set接口常用子类:散列存放:HashSet,有序存放:TreeSet
Interface Set<E>
4.Iterator接口
1.集合输出的标准操作:
标准做法,使用Iterator接口
2.操作原理:
Iterator是专门的迭代输出接口,迭代输出就是将元素一个个进行判断,判断其是否有内容,如果有内容则把内容取出
Interface Iterator<E>
修饰符和类型 | 方法 | 说明 |
---|---|---|
boolean | hasNext() | true如果迭代具有更多元素,则返回。 |
E | next() | 返回迭代中的下一个元素。 |
default void | remove() | 从基础集合中移除此迭代器返回的最后一个元素(可选操作)。 |
例子:
List<String> lists = new ArrayList<String>();
Iterator<String> iterator = lists.iterator();
while (iterator.hasNext()) {
System.out.println(iter.next());
}
5.Map接口(与Collection接口同级)
1.保存形式:
key→value的方式保存
2.常用子类:
HashMap:无序存放,key不允许重复
Hashtable:无序存放,key不允许重复
Interface Map<K,V>
K -此Map的键的类型
V -映射值的类型
修饰符和类型 | 方法 | 说明 |
---|---|---|
V | get(Object key) | 返回指定键所映射的值,或者null此映射不包含该键的映射。 |
boolean | containsKey(Object key) | 如果此映射包含指定键的映射,则返回true。 |
boolean | containsValue(Object value) | 如果此映射将一个或多个键映射到指定值,则返回true。 |
Set<K> | keySet() | 返回此映射中包含的键的Set。 |
Collection<V> | values() | 返回此映射中包含的值的Collection。 |