java集合

集合分类
1.Collection框架
这里写图片描述
Collection
├List
│├LinkedList
│├ArrayList
│└Vector
│ └Stack
└Set
从图中我们可以看出,Collection接口下共有Set、List、Queue三个子接口。由于后面我们要着重分析的是ArrayList、LinkedList、TreeSet、HashSet,因此我们不对Queue这个子接口做过多的解读。
List接口:List是一个有序的集合,每个元素都有索引且起始索引位置为0。
Set接口:Set是一个无序的集合,而且Set中不允许有重复元素。HashSet和HashMap之间、TreeSet和TreeMap之间还有依赖关系,后面我们会讲到。

2.Map框架
这里写图片描述
Map
├Hashtable
├HashMap
└WeakHashMap
Map接口:主要用来处理映射关系的集合。其中的每一个元素都是一个键值对(Entry)。
AbstractMap:实现Map的一个抽象类,Map中大多数方法都实现了。
HashTable:由于历史原因依旧继承Directionary类,但是实现了Map接口。

Collection接口
Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)

public interface Collection<E> extends Iterable<E>
{
    int size();
    boolean isEmpty()();
    boolean contains(Object o);
    Iterator<E> iterator();
    //返回包含此集合中所有元素的数组;返回数组的运行时类型是指定的数组的运行时类型。如果集合适合在指定的数组中,则返回其中。否则,将在指定数组的运行时类型和该集合的大小分配一个新的数组
    Object[] toArray();
    <T> T[] toArray(T[] a);

    //Modification Operations(修改 操作)
    boolean add(E e);
    boolean remove(Object o);

    //Bulk Operations(块 操作)
    boolean containsAll(Collection<?> c);
    boolean addAll(Collection<? extends E> c);
    boolean removeAll(Collection<?> c);
    default boolean removeIf(Predicate<? super E> filter) {};
    boolean retainAll(Collection<?> c);
    void clear();


    //Comparison and hashing(比较 和 哈希)
    boolean equals(Object o);
    int hashCode();
    default Spliterator<E> spliterator(){};
    default Stream<E> stream(){};
    default Stream<E> parallelStream(){};
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值