java基础-容器-List、ArrayList、LinkList

java基础--容器 List、ArrayList、LinkList

1.容器的总体框架

详细的贴一张大佬的图 ,有点错的地方就是Map那个分支是单独的,和Collection接口没有任何关联。原文地址

2.容器简述

容器简单点可以说就是一个桶,你可以往桶里放东西、拿东西、查看数据

不同的桶放不一样的东西

对桶的操作依据容器的种类不同而定。

3.容器的常用方法

<font size="40">Map</gont>

Map接口的实现类有HashMap,TreeMap,HashTable,WeakHashMap,IdentityHashMap

方法功能

Object put(Object key,Object value)存放键值对

Object get(Object key)通过键对象查找得到值对象

Object remove(Object key)删除键对象对应的键值对

boolean containsKey(Object key)Map容器中是否包含键对象对应的键值对

boolean containsValue(Object value)Map容器中是否包含值对象对应的键值对

int size()包含键值对的数量

boolean isEmpty()Map是否为空

void putAll(Map t)将t的所用=有键值对存放到本map对象

void clear()清空本map对象所有键值对

Map的全部方法

<font size="40">List</gont>

List接口的实现类有ArrayList,LinkedList,Stack

方法功能

boolean add(E o)向列表尾部追加指定的元素

void add(int index,E element)在指定位置插入元素

void clear()清除

E get(int idex)返回指定位置的元素

Object toAllay返回以正确顺序包含列表中所以元素的数组

int size()返回元素个数

int indexOf(Objext o)返回列表中首次出现元素的位置

E set(int index,E element)替换指定位置的元素

boolean addAll(index,Coolection<>c)指定位置插入集合全部元素

ListIterator<E>listIterator()返回一个迭代器

List<E>subList(int fromIndex,int toIndex)返回范围内的元素,包左不包右

int lastIndexOf(Objext o)返回列表中元素最后出现的位置

!

<font size="40">Set</gont>

set的差不多,下面的是所以方法

4.容器的深入

容器的实现类所对应的继承的抽象类和接口之间的关系有点错综复杂,主要可以重List,Set,Map三个入手。List和Set都实现Collection接口,而Collection实现了Iterable,而Map和这些都不同,它属于单独开来的一个。

容器的那些实现类都是在这三个接口上进行扩展,去实现自己的特有方法,形成不同种特性的桶。

特性

ArrayList    数组实现,插入删除代价大

Vector    也是数组实现,但是自持同步

LinkedList    链表,动态插入

HashSet 使用Hash算法来存储元素

SortedSet->TreeSet 确保处于有序

HashMap 双向链表来维护key-value的次序

还有一个数Queue队列,用的比较少

容器一个很不错的地方就是可以放对象,还有就是键值对.

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容