Collection接口
Collection接口继承了Iterable接口,在Conllection接口中,有以下抽象方法:
int size();返回集合中元素个数。
boolean isEmpty();返回集合是否为空。
boolean contains(Object o);返回集合内是否有元素o。
Iterator iterator();产生一个迭代器。
Object[] toArray();返回一个包含所有元素的数组。
boolean add(E e);返回添加一个元素e的结果。
boolean remove(Object o);返回删除一个元素o的结果。
Set接口
Set接口继承了Collection接口,用来包含一组无序无重复的对象,但是这个特性并不是Set接口本身就具备的,而是实现着个接口的类中体现的。
Set接口的常用实现类:
HashSet类:
在类中有两个重要的成员变量:
private transient HashMap<E,Object> map;这个变量是用来存储Set集合的,Set中的元素将会存放在HashMap中的key里面,这样来实现了无需无重复这一特点。
private static final Object PRESENT = new Object();这个变量是用来将set元素存进map集合时,生成与key对应的Object的。
HashSet集合的方法是调用对应的map方法。
TreeSet类:
在类中有两个成员变量:
private transient NavigableMap<E,Object> m;用来存放集合中的元素。
private static final Object PRESENT = new Object();对应元素的Object。
在调用TreeSet的构造函数时,最终都会New一个TreeMap对象。
LIst接口:
List接口继承了Collection接口,接口的常用实现类有:
ArrayList类:
内部使用数组实现,常用方法有:
void add();添加一个元素。
Object get(int i);得到一个元素。
Object set(int i,Object o);修改一个元素。
int indexOf(Object o);返回元素的索引值。
int lastIndexOf(Object o);返回元素的最后一个索引值。
Object clone();复制这个集合。
Object remove(int i);删除一个元素。
lterator接口:
每个Collection接口的实现类中都有一个iterator的方法,返回值为这个接口的对象,在Collection实现类中都有一个内部类实现了Iterator接口。
Iterator接口中常用的方法:
Object next();下一个元素。
boolean hasNext();是否有下一个元素。
void remove();删除元素。
Map接口:
在Map接口中有一个内部接口Entry,Entry常用的方法有:
getKey();返回key的值。
getValue();返回value的值。
setValue();修改value的值。
Map中常用的方法有:
int size();返回Map中元素的个数。
boolean isEmpty();判断是否为空。
boolean containsKey(Object key);返回集合中是否有Key值。
boolean containsValue(Object value);返回集合中是否有value值。
get(Object key);返回value的值。
put(key,value);存放元素。
remove(Object key);删除。
Set keySet();返回一个key值的set集合。
Set entrySet();返回一个entry的set集合。
HashMap类:
在类中有一个内部类EntrySet。继承了AbstractSet接口,由entrySet方法获得对象。
在EntrySet类中有iterator方法,返回一个EntryIterator类的对象。这个类继承了HashIterator类和实现了Iterator接口,类中只有一个next()方法。这个方法使迭代器指针右移,返回值是Entry。
转载于:https://www.cnblogs.com/xiaosuye/p/11160172.html