java集合的部分接口
接口 Collection<E>
public interface Collection<E>
extends Iterable<E> Collection 层次结构 中的根接口。Collection 表示一组对象,这些对象也称为 collection 的元素。
一些 collection 允许有重复的元素,而另一些则不允许。一些 collection 是有序的,而另一些则是无
序的。JDK 不提供此接口的任何直接 实现:它提供更具体的子接口(如 Set 和 List)实现。此接口通常用
来传递 collection,并在需要最大普遍性的地方操作这些 collection。
add(E e)
确保此 collection 包含指定的元素(可选操作)。addAll(Collection<? extends E> c)
将指定 collection 中的所有元素都添加到此 collection 中(可选操作)。clear()
移除此 collection 中的所有元素(可选操作)。
contains(Object o)
如果此 collection 包含指定的元素,则返回 true。
contains(Object o)
如果此 collection 包含指定的元素,则返回 true。
equals(Object o)
比较此 collection 与指定对象是否相等。
hashCode()
返回此 collection 的哈希码值。
isEmpty()
如果此 collection 不包含元素,则返回 true。
iterator()
返回在此 collection 的元素上进行迭代的迭代器。(由父接口继承Iterable<E>)
remove(Object o)
从此 collection 中移除指定元素的单个实例,如果存在的话(可选操作)。
removeAll(Collection<?> c)
移除此 collection 中那些也包含在指定 collection 中的所有元素(可选操作)。
retainAll(Collection<?> c)
仅保留此 collection 中那些也包含在指定 collection 的元素(可选操作)。
size()
返回此 collection 中的元素数。
toArray()
返回包含此 collection 中所有元素的数组。
toArray(T[] a)
返回包含此 collection 中所有元素的数组;返回数组的运行时类型与指定数组的运行时类型相同。
接口 List<E>
public interface List<E>
extends Collection<E>
有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。
用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。
与 set 不同,列表通常允许重复的元素。更确切地讲,列表通常允许满足 e1.equals(e2) 的元素对 e1
和 e2,并且如果列表本身允许 null 元素的话,通常它们允许多个 null 元素。难免有人希望通过在用户尝
试插入重复元素时抛出运行时异常的方法来禁止重复的列表,但我们希望这种用法越少越好。
父接口实现的方法都有,个别还进行重载。
get(int index)
返回列表中指定位置的元素。
indexOf(Object o)
返回此列表中第一次出现的指定元素的索引;如果此列表不包含该元素,则返回 -1。
lastIndexOf(Object o)
返回此列表中最后出现的指定元素的索引;如果列表不包含此元素,则返回 -1。
listIterator()
返回此列表元素的列表迭代器(按适当顺序)。
listIterator(int index)
返回列表中元素的列表迭代器(按适当顺序),从列表的指定位置开始。
set(int index, E element)
用指定元素替换列表中指定位置的元素(可选操作)。
subList(int fromIndex, int toIndex)
返回列表中指定的 fromIndex(包括 )和 toIndex(不包括)之间的部分视图。
接口 Set<E>
public interface Set<E>
extends Collection<E> 一个不包含重复元素的 collection。更确切地讲,set 不包含满足e1.equals(e2)
的元素对e1
和e2
,
并且最多包含一个 null 元素。正如其名称所暗示的,此接口模仿了数学上的 set 抽象。
在所有构造方法以及 add、equals 和 hashCode 方法的协定上,Set 接口还加入了其他规定,这些规定超出
了从 Collection 接口所继承的内容。出于方便考虑,它还包括了其他继承方法的声明(这些声明的规范已经专门
针对 Set 接口进行了修改,但是没有包含任何其他的规定)。 父接口实现的方法都有,个别还进行重载。
接口 Iterator<E>
public interface Iterator<E>
对 collection 进行迭代的迭代器。迭代器取代了 Java Collections Framework 中的 Enumeration。迭代器与枚举有两点不同:
- 迭代器允许调用者利用定义良好的语义在迭代期间从迭代器所指向的 collection 移除元素。
- 方法名称得到了改进。
hasNext()
如果仍有元素可以迭代,则返回 true。
next()
返回迭代的下一个元素。
remove()
从迭代器指向的 collection 中移除迭代器返回的最后一个元素(可选操作)。
接口 Map<K,V>
- 类型参数:
K
- 此映射所维护的键的类型V
- 映射值的类型-
将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。
clear()
从此映射中移除所有映射关系(可选操作)。containsKey(Object key)
如果此映射包含指定键的映射关系,则返回 true。 containsValue(Object value)
如果此映射将一个或多个键映射到指定值,则返回 true。entrySet()
返回此映射中包含的映射关系的Set
视图。equals(Object o)
比较指定的对象与此映射是否相等。get(Object key)
返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回null
。hashCode()
返回此映射的哈希码值。isEmpty()
如果此映射未包含键-值映射关系,则返回 true。keySet()
返回此映射中包含的键的Set
视图。put(K key, V value)
将指定的值与此映射中的指定键关联(可选操作)。putAll(Map<? extends K,? extends V> m)
从指定映射中将所有映射关系复制到此映射中(可选操作)。remove(Object key)
如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。size()
返回此映射中的键-值映射关系数。values()
返回此映射中包含的值的Collection
视图。
java集合的部分接口的更多相关文章
- Java集合之Collection接口
java的集合分为三大接口,分别是Collection,Map,Iterator,集合接口和类在java.util包中,此次主要介绍三大接口之一的Collection接口. 一些Collection允 ...
- Java集合及LIst接口
一.集合的概念 1.概述: 在学习集合前,先回忆一下数组的一个特征---数组有固定的长度,定义一个数组: int[] array = new int[]; 而针对数据长度可变的情况,产生了集合, ja ...
- Java集合框架——Map接口
第三阶段 JAVA常见对象的学习 集合框架--Map集合 在实际需求中,我们常常会遇到这样的问题,在诸多的数据中,通过其编号来寻找某一些信息,从而进行查看或者修改,例如通过学号查询学生信息.今天我们所 ...
- Java集合框架——Set接口
第三阶段 JAVA常见对象的学习 集合框架--Set接口 List集合的特点是有序的,可重复的,是不是存在这一种无序,且能保证元素唯一的集合呢?(HashSet )这就涉及到我们今天所要讲的Set集合 ...
- Java集合框架——List接口
第三阶段 JAVA常见对象的学习 集合框架--List接口 按照集合框架的继承体系,我们先从Collection中的List接口开始学习 (一) 概述及功能(ArrayList演示) (1) 概述 L ...
- Java集合框架之接口Collection源码分析
本文我们主要学习Java集合框架的根接口Collection,通过本文我们可以进一步了解Collection的属性及提供的方法.在介绍Collection接口之前我们不得不先学习一下Iterable, ...
- Java集合框架Map接口
集合框架Map接口 Map接口: 键值对存储一组对象 key不能重复(唯一),value可以重复 常用具体实现类:HashMap.LinkedHashMap.TreeMap.Hashtable Has ...
- Java集合框架的接口和类层次关系结构图
Collection和Collections的区别 首先要说的是,"Collection" 和 "Collections"是两个不同的概念: 如下图所示,&qu ...
- Java集合中Map接口的使用方法
Map接口 Map提供了一种映射关系,其中的元素是以键值对(key-value)的形式存储的,能够实现根据key快速查找value: Map中的键值对以Entry类型的对象实例形式存在: 建(key值 ...
- java集合_collection子接口 list的特有方法,ArrayList类体现
/* Collection |--List:元素是有序的,元素可以重复.因为该集合体系有索引. |--ArrayList:底层的数据结构使用的是数组结构.特点:查询速度很快.但是增删稍慢.线程不同步. ...
随机推荐
- [1-2] 把时间当做朋友(李笑来)Chapter 2 【开启自己的心智】 摘录
心智是可培养的.可发展的.甚至是可以重建的 早意识到,早些培养可以让自己起步更早些 审视一下我们自己,运用自己的心智,我们会知道每个人可以把自己划分为两部分:自己知道的与自己并不知道的.我们有的时候并 ...
- (三)EasyUI 使用——form表单1
form表单组件主要有以下内容(如下图) 1. validatebox验证框 姓名:必填/1-4个字符/必填中文 邮箱:必填/1-30个字符/必填符合邮箱格式/后缀必须是com或cn 密码验证 ...
- MVC的优缺点
MVC的优点 大部分用过程语言比如ASP.PHP开发出来的Web应用,初始的开发模板就是混合层的数据编程.例如,直接向数据库发送请求并用HTML显示,开发速度往往比较快,但由于数据页面的分离不是很直接 ...
- C# 读取Ini配置文件类
配置文件 为fileName.ini 的文件 第一行必须为空,不然读不出值 [section1] key=value key2=value ......... [section2] key=value ...
- 【Android 开发教程】动态添加Fragments
本章节翻译自<Beginning-Android-4-Application-Development>,如有翻译不当的地方,敬请指出. 原书购买地址http://www.amazon.co ...
- 安装ecshop默认安装后的错误解决方案
1,统一解决 php.ini中的配置 error_reporting = E_ALL | E_STRICT 这是说,显示那些不符合编码规范的警告(coding standards warnings). ...
- Linux操作系统桌面环境GNOME和KDE的切换
一.设置GNOME或者KDE为默认的启动桌面环境 方法1:修改/etc/sysconfig/desktop,根据需要将“DESKTOP”后面的内容改为KDE或GNOME. 方法2:在当前用户目录下建立 ...
- Java线程安全同步容器
线程安全同步容器(使用 synchronized关键字) 1.ArrayList->Vector,Stack 2.HashMap->HashTable(key.value不能为null) ...
- Atitit.编程语言新特性 通过类库框架模式增强 提升草案 v3 q27
Atitit.编程语言新特性 通过类库框架模式增强 提升草案 v3 q27 1. 修改历史2 2. 适用语言::几乎所有编程语言.语言提升的三个渠道::语法,类库,框架,ide2 2.1. 单根继承 ...
- [na]esxi6.5的vmware安装
安装exsi6.5(最新的软件见评论区) ,安装 ,激活(可选) ,浏览器登录(.5好像没客户端了,所以就用浏览器,挺方便的) 安装包和key包在网盘里: 链接:https://pan.baidu.c ...