集合
集合是一种具有去重功能的数据结构,它与其他数据结构(如链表,数组,树)的区别也是因为它的添加元素方法(add方法)会对元素是否存在进行判断。它底层可以使用链表,数组,树等实现。一个集合中不能存放两个相同的元素。集合中的元素用红黑树实现时元素必须具有可比较性。其接口中方法如下:
public interface set<E> {
int size();
boolean isEmpty();
void clear();
boolean contains(E element);
void remove(E element);
void add(E element);
void traversal(Visitor<E> visitor);
public static abstract class Visitor<E>{
boolean stop;
public abstract boolean visit(E element);
}
}
映射
映射是一种每个元素(或节点)具有两个值域(一个Key和一个Value)的数据结构。Key和Value一一对应。
public interface Map<K, V> {
int size();
boolean isEmpty();
void clear();
V put(K key,V value);
V get(K key);
V remove(K key);
boolean containsKey(K key);
boolean containsValue(V value);
void traversal(Visitor<K,V> visitor);
public static abstract class Visitor<K,V>{
boolean stop;
abstract boolean visit(K key,V value);
}
}