三大集合对比整理

三大集合对比整理

Collection 子接口有 List   Set

List:

         ArrayList 查询快 增删慢  (存读)有序可重复 不同步 数据增长默认原来的一半

         常见方法:

add(E e) 添加 返回boolean

size ()  列表中的元素数

remove(int index) 删除指定元素 返回指定类型E

get(int index) 获得指定元素 返回指定类型E

clear() 列表中删除所有元素 返回viod

contains(Object o) 此列表包含指定的元素 包含返回true

indexOf(Object o) 元素的第一次出现的下标  不包含 返回-1

iterator() 返回该列表中的元素的迭代器

toArray() 返回一个包含此列表中所有元素的数组

方法基本都类似具体看api;

         linkedList 查询慢 增删快 有序(存储和读取)可以重复  不同步

         Vector      与ArrayList类似(过时了) 区别Vector同步 数据增长默认原来的一倍

Set:

         HashSet  是无序的(存储和读取),不可重复 不同步

         TreeSet   不可重复 底层是二叉树  默认排序自然排序(还可以自定义排序) 不同步

         LinkedHashSet 不可以重复  有序 (存读顺序一致)  (底层是双向链表) 不同步

Map

         常见方法:

                          put(k,v) 一个key一个value;(如果新增的key存在则返回key以前对应的value)

                          get(key) 接收的是value;  返回value

containsKey(obkject key)//判断key值是否存在 存在返回true;

remove (object key);通过key值删除map集合数

size()map集合长度

keySet();//把map中所有的Key放入Set集合

entrySet();//把映射关系转化为set集合;

values();//返回一个集合  此集合装map中的value

                          hashCode() 返回此集合的哈希码值。

replace(K key, V value) 替换上一个与此key相等的键值对 返回上一个键的value

clone() 返回此 HashMap实例的浅拷贝:键和值本身不被克隆

HashMap  Key不可重复,value可重复 无序的 不同步 允许null放到key value 线程不安全;

         Hashtable 与HashMap类似,不予许null为Key或value  线程安全同步的

WeakHashMap一种改进的HashMap,它对key实行“弱引用”,如果一个key不再被外部所引用,那么该key可以被GC回收

         LinkedHashMap 有序的(存储和读取)  链表结构

         TreeMap       有序不可重复 不安全的

详细请看api

猜你喜欢

转载自blog.csdn.net/Hello_word_2/article/details/81543880