Java集合框架包含的内容
Java集合框架简图
接口: 表示集合的抽象数据类型,虚线框表示,如Collection、List、Set、Map、Itector。
实现: 集合框架中接口的具体实现,实现狂表示,祖先狂表示最常用的实现,如ArrayList、LinkedList、 HashMap、HashSet。
算法: 在一个实现了某个集合框架中的接口的对象身上完成某种有用的计算的方法,如查找、排序等。Java提供 了进行集合操作的工具类Collections(类似于Arrays类),它提供了对集合进行排序等多种算法的实现。
Collection 接口存储一组不唯一(允许重复)、无序的对象。
Set 接口继承Collection接口,存储一组唯一(不允许重复)、无序的对象。
List接口继承Collection接口,存储一组不唯一(允许重复)、有序的对象。(以元素插入的次序来放置元素,不会重新排列)
Map接口存储一组成对的键-值对象,提供key到value的映射。Map中的key不要求有序,不允许重复。
Iterator 接口是负责定义访问和遍历元素的接口。
List接口中定义的各种常用方法
方法名称说明boolean add(Object o) void add(int index,Object o)添加某个元素到某个位置int size()返回元素个数Object get(int index)返回指定位置元素boolean contains(Object o)是否存在某个元素boolean remove(Object o)删除元素Object remove(int index)移除指定位置元素
LinkedList一些特殊方法:addFirst(),addLast()getFirst(),getLast(),removeFirst(),removeLast().
HashSet类的常用方法
方法说明boolean add(Object o)如果尚未包含指定元素,则添加void clear()set移除所有元素int size()返回set中元素数量boolean is Empty()判断是否为空boolean contains(Object o)是否包含某个元素boolean remove(Object o)移除
Map的常用方法
方法说明object put(Object key,Object value)添加object get(Object key)根据键返回值,若不存在指定键返回nullObject remove(Object key)删除int size()返回元素个数Set keySet()返回键集合Collection values()返回值集合boolean containsKey(Object key)判断是否存在指定keyboolean isEmpty() void clear()移除所有映射关系
Hashtable和HashMap的异同:
HashMap类出现之前,JDK中存在一个和他同样采用哈希表存储方式、同样实现键值映射的集合类Hashtable。 实现原理相同,功能相同,很多情况下可以互用。
区别:
Hashtable继承自Dictionary类,而HashMap实现了Map接口。
Hashtable是线程安全的,HashMap重速度、轻安全,是线程非安全的,在多线程中要管理线程同步问题。
Hashtable不允许null值(key、value都不允许),HashMap允许。
转载请注明原文地址: https://www.6miu.com/read-50411.html