作者:完结那份友谊吧_586 | 来源:互联网 | 2024-09-26 19:09
在JAVA中专门设计了一组类,他们实现了各种各样的数据存储,这种专门用来存储其他对象的类,被称为容器类,这组类和接口的设计结构也被称为集合框架(CollectionFramework)。JAVA集
在JAVA中专门设计了一组类,他们实现了各种各样的数据存储,这种专门用来存储其他对象的类,被称为容器类,这组类和接口的设计结构也被称为集合框架(Collection Framework)。
JAVA集合主要分为三种类型。
- Set(集):集合中的对象不按照特定顺序排序,不允许有重复对象。某些实现类可以对集合中对象按特定方式排序。
- List(列表):集合中的对象按照索引位置排序,允许有重复对象。List和数组有些相似。
- Map(映射):集合中每个元素包含一个键(Key)和一个值(Value),集合中的键不可以重复,值可以重复。
Collection和Iterator接口
在Collection接口中声明了适应于JAVA集合(包括Set和List)的通用方法,JDK不提供接口的任何直接实现,而是通过其更具体的子类(Set和List)实现。
Collection方法摘要
返回值 |
方法名 |
说明 |
boolean |
add(E e) |
确保此 collection 包含指定的元素(可选操作) |
boolean |
addAll(Collection c) |
将指定 collection 中的所有元素都添加到此 collection 中(可选操作) |
void |
clear() |
移除此 collection 中的所有元素(可选操作) |
boolean |
contains(Object o) |
如果此 collection 包含指定的元素,则返回 true |
boolean |
containsAll(Collection c) |
如果此 collection 包含指定 collection 中的所有元素,则返回 true |
boolean |
equals(Object o) |
比较此 collection 与指定对象是否相等 |
int |
hashCode() |
返回此 collection 的哈希码值 |
boolean |
isEmpty() |
如果此 collection 不包含元素,则返回 true |
Iterator |
iterator() |
返回在此 collection 的元素上进行迭代的迭代器 |
boolean |
remove(Object o) |
从此 collection 中移除指定元素的单个实例,如果存在的话(可选操作) |
boolean |
removeAll(Collection> c) |
移除此 collection 中那些也包含在指定 collection 中的所有元素(可选操作) |
boolean |
retainAll(Collection> c) |
仅保留此 collection 中那些也包含在指定 collection 的元素(可选操作) |
int |
size() |
返回此 collection 中的元素数 |
Object[] |
toArray() |
返回包含此 collection 中所有元素的数组 |
T[] |
toArray(T[] a) |
返回包含此 collection 中所有元素的数组;返回数组的运行时类型与指定数组的运行时类型相同 |
在Collection对象中并没有提供获取元素的方法。如果需要遍历Collection中的元素,一般采用Iterator遍历器。使用Iterator可以遍历集合中的各个对象元素。
Iterator方法摘要
返回值 |
方法名 |
说明 |
boolean |
hasNext() |
如果仍有元素可以迭代,则返回 true |
E |
next() |
返回迭代的下一个元素 |
void |
remove() |
从迭代器指向的 collection 中移除迭代器返回的最后一个元素(可选操作) |
Map接口
Map接口不是Collection的子类,Map是一种把键对象和值对象进行映射的集合,它的每一个元素都包含了一对键对象和值对象。Map中不能有重复的键Map中存的键值对是通过键作为标识的。
Map方法摘要
返回值 |
方法名 |
说明 |
void |
clear() |
从此映射中移除所有映射关系(可选操作) |
boolean |
containsKey(Object key) |
如果此映射包含指定键的映射关系,则返回 true |
boolean |
containsValue(Object value) |
如果此映射将一个或多个键映射到指定值,则返回 true |
Set |
entrySet() |
返回此映射中包含的映射关系的 Set 视图 |
boolean |
equals(Object o) |
比较指定的对象与此映射是否相等 |
V |
get(Object key) |
返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null |
int |
hashCode() |
返回此映射的哈希码值 |
boolean |
isEmpty() |
如果此映射未包含键-值映射关系,则返回 true |
Set |
keySet() |
返回此映射中包含的键的 Set 视图 |
V |
put(K key, V value) |
将指定的值与此映射中的指定键关联(可选操作) |
void |
putAll(Map extends K,? extends V> m) |
从指定映射中将所有映射关系复制到此映射中(可选操作) |
V |
remove(Object key) |
如果存在一个键的映射关系,则将其从此映射中移除(可选操作) |
int |
size() |
返回此映射中的键-值映射关系数 |
Collection |
values() |
返回此映射中包含的值的 Collection 视图 |
这一篇博客只是简单的介绍下JAVA集合框架,接下来的几篇博客中将逐一的介绍JAVA集合框架中常用的实现类。