集合

集合

Collection和Map

Collection的继承接口有List序列、Queue队列、Set集。序列和队列有序允许重复,集里的元素无序不允许重复。

List实现类有ArrayList和LinkedList。Queue实现类有LinkedList。Set实现类有HashSet。

Map的实现类有HashMap。

List概述

  • List是元素有序并且可以重复的集合,成为序列。
  • List可以精确的控制每个元素的插入位置,或删除某个位置的元素。
  • List的两个主要实现类是ArrayList和LinkedList。

ArrayList底层是由数组实现,动态增长,以满足应用程序的要求,在列表尾部插入或删除数据非常有效,更适合查找和更新元素,ArrayList中的元素可以为null。

ArrayList方法

返回的类型方法和描述
booleanadd(E e)
添加特殊的元素到序列的尾部
voidadd(int index,E element)
在index处插入一个特殊的元素
voidclear()
删除序列中所有的元素
booleancontains(Object o)
如果包含元素o则返回true,否则返回false
Eget(int index)
返回当前索引处的元素
intindexOf(Object o)
返回此列表中指定元素第一次出现的索引,如果此列表不包含该元素,则返回-1。
booleanisEmpty()
如果序列中没有元素则返回true,否则返回false
Eremove(int index)
返回序列中特殊位置的元素
booleanremove(Object o)
从列表中删除指定元素的第一个匹配项(如果存在)。
Eset()
用指定的元素替换此列表中指定位置的元素。
intsize()
返回在序列中元素的个数
voidsort(Comparator<? super E>c)
根据指定比较器产生的顺序对该列表进行排序。
Object[]toArray()
返回一个数组,该数组按正确的顺序(从第一个元素到最后一个元素)包含此列表中的所有元素。

LinkedList

方法名说明
LinkedList()构造一个空列表
LinkedList(Collection<? extends E>c)构造一个包含指定collection中的元素的列表,这些元素按其collection的迭代器返回的顺序排列
返回的类型方法和描述
booleanadd(E e)
将指定元素添加到此列表的结尾
voidadd(int index,E element)
在此列表中指定的位置插入的指定的元素
booleanaddAll(Collection<? extends E> c)
添加指定collection中的所有元素到此列表的结尾
booleanaddAll(int index,Collection<? extends E>c)
添加指定collection中的所有元素到此列表的结尾
voidaddFirst(E e)
将指定元素插入此列表的开头
voidaddLast(E e)
将指定元素添加到此列表的结尾
voidclear()
从此列表中移除所有元素
Eget(int index)
返回此列表中指定位置处的元素
intindexOf(Object o)
返回此列表中首次出现的指定元素的索引,如果此列表中不包含该元素,则返回-1
Eremove()
获取并移除此列表的头(第一个元素)
Eremove(int index)
移除此列表中指定位置处的元素
booleanremove(Object o)
从此列表中移除首次出现的指定元素(如果存在)
Object[]toArray()
返回以适当顺序(从第一个元素到最后一个元素)包含此列表中所有元素的数组

Set概述

Set是元素无序并且不可以重复的集合,被称为集。

HashSet

  • HashSet是Set的一个重要实现类,称为哈希集。
  • HashSet中的元素无序并且不可重复
  • HashSet中只允许一个null元素
  • 具有良好的存取和查找性能。
返回类型方法和描述
booleanadd(E e)
在这个集合中添加一个具体的元素,如果不存在则返回true。
booleanaddAll(Collection<? extends E> c)
如果指定集合中的所有元素尚不存在,则将它们添加到此集合(可选操作)。
voidclear()
从此集中中移除所有元素
booleancontains(Object o)
如果此集合存在这个具体的元素则返回true
inthasCode()
返回该集合的哈希值
booleanisEmpty()
如果该集合没有元素存在则返回true
Iteratoriterator()
返回此集合中元素的迭代器。
booleanremove(Object o)
如果存在,从该集合中移除具体的元素
booleanremoveAll(Collection<?> c)
从该集合中移除包含在指定集合中的所有元素(可选操作)
intsize()
返回该集合中元素的数量
Object[]toArray()
返回包含此集中所有元素的数组。

Iterator迭代器

  • Iterator接口可以以统一的方式对各种集合元素进行遍历
  • hasNext()方法检测集合中是否还有下一个元素
  • next()方法返回集合中的下一个元素

Map

  • Map中的数据是以键值对(key-value)的形式存储的
  • key-value以Entry类型的对象实例存在
  • 可以通过key值快速地查找value
  • 一个映射不能包含重复地键
  • 每个键最多只能映射一个值

HashMap

  • 基于哈希表的Map接口的实现
  • 允许使用null值和null键
  • key值不允许重复
  • HashMap中的Entry对象是无序排列的
返回的类型方法和描述
voidclear()
从此映射中删除所有映射。
booleancontainsKey(Object key)
如果此map包含了对于具体的映射则返回true
booleancontainsValue(Object value)
如果此映射将一个或多个键映射到指定值,则返回true。
Set<Map.Entry<K,V>>entrySet()
返回此映射中包含的映射的集合视图
Vget(Object key)
返回该键对应的值如果该map不包含该键对应的值则返回null
booleanisEmpty()
如果map中不存在键值映射了,则返回true
SetkeySet()
返回此键值映射的包含键的Set视图
Vput(K key,V value)
将指定值与此映射中的指定键相关联。
Vremove(Object key)
从该映射中移除指定键的映射(如果存在)
booleanremove(Object key,Object value)
仅当指定项当前映射到指定值时,才删除该项。
intsize()
返回映射的键值对的数量
Collectionvalues()
返回此映射中包含的值的集合视图。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值