collection与map的方法小结

collection:
add()添加元素
addAll(collection)将集合中的元素全部添加
clear()移除所有的元素
contains()判断是否包含给定的元素或者给定的集合
equals()进行比较,如果重写,则判断内容,没重写则判断地址值
hashcode()返回集合的哈西代码值
isempty()判断是否为空
iterator()返回迭代器
remove()移除指定的元素(若存在)
removeAll(collection)删除给定集合存在元素
size()返回集合元素的数目
toArray()返回包含此集合所有元素的数组

Hashset:
需要重写equals()和hashcold()方法来保证唯一
clone()克隆但是二者关联,只会克隆地址值,浅克隆

treeset:
clone()同hashset
first()返回集合中第一个元素,最小的
last()返回最后一个元素,最大的
pollfist()移除第一个元素,并返回第一个元素,null则为空
pollLast()移除最后一个元素,并返回最后一个元素,null则为空


list:
add(int a,E e)在指定的a处插入E类型的元素e
addAll(int a,collection e)在指定的a处插入集合
get(int a)返回指定索引处的元素
indexof()返回第一次出现给定元素的索引,如果不包含,返回-1
lastindexof()返回最后依次出现给定元素的索引,如果不包含返回-1
listIterator() List集合的指定迭代器
listIterator(int a) List集合指定位置开始的的指定迭代器
a.retainall(b)将a集合中b集合不包含的数全部删除,并不改变b集合,若a发生改变则返回true,反之false
set(int a,E e)将a处的元素更换为e


ArrayList:
sort(comparator c)分类列表使用提供的comparatorto比较元素
sublist(int a, int b)截取a到b处的元素


ArrayList:底层数据结构是数组,查询快,增删慢。线程不安全,效率高。
Vector:底层数据结构是数组,查询快,增删慢。线程安全,效率低。
LinkedList:底层数据结构是链表,查询慢,增删快。

map:
clear()清空
containskey(key)判断是否包含指定的键
containsValue(Value)判断是否包含指定的值(可能有多个
get(key)获取指定键对应的值
isEmpty()是否为空
put()插入值
putAll()全部插入
remove(key)移除
removeAll(map)移除指定的全部
replace(key,value)替换Key的值
erplace(key,oldvalue,newvalue)若给定的键对应oldvalue则将oldvalue替换为newvalue
size()长度

 Hsahmap:与map基本一致

treemap:
tailMap(K fromKey) 返回从这个Map的关键是大于或等于 fromKey部分。
submap(K key, K key2)截取key到key2的值为


LinkedHashMap的特点: 底层的数据结构是链表和哈希表 元素有序 并且唯一,元素的有序性由链表数据结构保证 唯一性由 哈希表数据结构保证

键的数据结构是红黑树,可保证键的排序和唯一性,排序分为自然排序和比较器排序。 线程是不安全的效率比较高

HashMap和Hashtable的区别:    查看API可以知道
HashMap: 线程不安全,效率高.允许null值和null键
Hashtable: 线程安全 , 效率低.不允许null值和null键

猜你喜欢

转载自blog.csdn.net/weixin_42827269/article/details/82347405