Collection接口
-
接口:是代表集合的抽象数据类型。例如 Collection、List、Set、Map 等。之所以定义多个接口,是为了以不同的方式操作集合对象,
-
内部定义了操作方法。
-
实现(类):是集合接口的具体实现。从本质上讲,它们是可重复使用的数据结构,例如:ArrayList、LinkedList、HashSet、HashMap。
-
算法:是实现集合接口的对象里的方法执行的一些有用的计算,例如:搜索和排序。这些算法被称为多态,那是因为相同的方法可以在相似的接口上有着不同的实现。
Collection实现类(可用类)
|
该类实现了List接口,允许有null(空)元素。主要用于创建链表数据结构, |
|
|
该类也是实现了List的接口,实现了可变大小的数组,随机访问和遍历元素时,提供更好的性能。该类也是非同步的,在多线程的情况下不要使用。ArrayList 增长当前长度的50%,插入删除效率低。 | |
HashSet | 该类实现了Set接口,不允许出现重复元素,不保证集合中元素的顺序,允许包含值为null的元素,但最多只能一个。 | |
TreeSet | 该类实现了Set接口,可以实现排序等功能。 | |
|
HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。 该类实现了Map接口,根据键的HashCode值存储数据,具有很快的访问速度,最多允许一条记录的键为null, |
|
TreeMap | 继承了AbstractMap,并且使用一颗树。 |
List接口常用方法
方法 | 说明 |
---|---|
get(int index) | 获取列表指定元素 |
set(int index,E element) | 修改指定位置的值,新值为element |
add(int index,E element) | 向列表指定位置插入数值 |
add(E element) | 向列表中添加值 |
remove(int index) | 删除列表指定元素 |
Iterator常用方法
方法 | 说明 |
---|---|
boolean hasNext() | 判断是否有后续元素,有则返回true |
E next() | 返回后续元素 |
void remove() | 删除迭代器当前指向的元素 |
java中contains方法是判断是否存在包含关系的,
比如说集合a =[1,2,3,4],b=1,那么a就包含b;
contains返回的是布尔类型true 和false,包含的话就返回true,不包含的话就返回false
例:
public class pratise {
public static void main(String[] args) {
// TODO Auto-generated method stub
String a = "l love feng ye";
String b = "love";
boolean c = a.contains(b); //这里就是判断集合b是否包含字符或者字符串a
System.out.println(a.contains(b));
//assertEquals(a.contains(b), "true");
assert(c)=true; //加断言
}
}
Map接口
Map内存储的是键/值对这样以成对的对象组
Map是不同于Collection的另外一种集合接口
Map中,key值是唯一的(不能重复),而key对象是与value对象关联在一起的
Map接口有两个实现:
HashMap — key/value对:是按照Hash算法存储的
TreeMap — key/value对是排序:(按key排序)存储的
Map接口常用方法
方法 |
含义 |
Object put(Object key,Object value) |
将指定的值与此映射中的指定键相关联 |
void putAll(Map t) |
将映射t中所有映射关系复制到此映射中 |
Object get(Object key) |
返回此映射中映射到指定键的值 |
Object remove(Object key) |
若存在此键的映射关系,将其从映射中移除 |
boolean containsKey(Object key) |
若此映射包含指定键的映射关系,返回 true |
boolean containsValue(Object value) |
若此映射为指定值映射一个或多个键,返回 true |
int size() |
返回此映射中的键-值映射对数 |
void clear() |
从此映射中移除所有映射关系 |
boolean isEmpty() |
若此映射未包含键-值映射关系,返回 true |
Set keySet() |
返回此映射中包含的键的 set 视图 |
来源:oschina
链接:https://my.oschina.net/u/3888017/blog/1917710