干了这杯Java之集合概览
Java集合框架支持两种类型容器:
- 一种是为了存储一个元素的合集,为Collection
- 一种是为了存储键/值对,为Mapping
Collection包含
- Set存储不重复的元素
- List存储一个有序元素合集
- Stack存储采用后进先出方式处理的对象
- Queue存储采用先进先出方式处理的对象
- Priority Queue存储优先级顺序处理的对象
Collection接口是一切合集的根接口,它继承了Iterable接口生成一个Iterator对象用于遍历元素,它为这些合集定义了通用的操作

Collection接口的方法
- add(E):boolean
- addAll(Collection<? extends E>):boolean
- clear():void
- contains(Object):boolean
- containsAll(Collection<?>):boolean
- equals(Object):boolean
- hashCode():int
- isEmpty():boolean
- iterator():Iterator
- remove(Object):boolean
- removeAll(Collection<?>):boolean
- removeIf(Predicate<? super E>):boolean
- retainAll(Collection<?>):boolean
- size():int
- 等
AbstractCollection抽象类提供了Collect接口的部分实现
- boolean isEmpty()
- boolean contains(Object)
- Object[] toArray()
- boolean remove(Object)
- boolean containsAll(Collection<?>)
- boolean addAll(Collection<? extends E>)
- boolean removeAll(Collection<?>)
- void clear()
- 等
List存储一个有序元素合集
Set是最简单的一种集合。集合中的对象不按特定的方式排序,并且没有重复对象
Queue是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作
Map将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值

Map接口中的方法
- clear():void
- containsKey(Object):boolean
- containsValue(Object):boolean
- entrySet():Set<Map.Entry<K, V>>
- equals(Object):boolean
- get(Object):V
- getOrDefault(Object, V):V
- hashCode():int
- isEmpty():boolean
- keySet():Set
- put(K, V):V
- putAll(Map<? extends K, ? extends V>):void
- remove(Object):V
- remove(Object, Object):boolean
- replace(K, V):V
- replace(K, V, V):boolean
- replaceAll(BiFunction<? super K, ? super V, ? extends V>):void
- size():int
- values():Collection
AbstractMap是抽象类,实现了entrySet()之外的所有方法
干了这杯Java之集合概览的更多相关文章
- 干了这杯Java之LinkedList
LinkedList和ArrayList一样实现了List接口 ArrayList内部为数组 LinkedList内外为双向链表 实现了Deque接口,双端列队的实现 图片来自Wiki 内部实现为No ...
- 干了这杯Java之Vector
Vector实现了AbstractList抽象类和List接口,和ArrayList一样是基于Array存储的 Vector 是线程安全的,在大多数方法上存在synchronized关键字 //Vec ...
- 干了这杯java之ThreadLocal
ThreadLocal Java篇 是什么 怎么用 源码 缺点 总结 是什么 ThreadLocal是一个关于创建线程局部变量的类,这个变量只能当前线程使用,其他线程不可用. ThreadLocal提 ...
- 干了这杯Java,让你的Idea比eclipse好用
1.Idea基本配置 1.1 Idea简介 Idea是一个专门针对Java的集成开发工具(IDE),由Java语言编写.所以,需要有JRE运行环境并配置好环境变量.简单的说,Idea是写代码用的工具. ...
- 干了这杯Java之ArrayList
List存储一个有序元素合集 List接口的实现类有: ArrayList,LinkedList,Vector,Stack ArrayList一个数组型的List 默认容量为10 private st ...
- 干了这杯Java之HashMap
类: public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneab ...
- 干了这杯Java之transient关键字
看源码的时候,发现transient这个关键字,不甚理解,查找资料发现:不被序列化 疑问: 静态变量是不是不被序列化? public class User implements Serializabl ...
- C#与C++、Java之比较概览
转自C#与C++.Java之比较概览 C#与C++.Java之比较概览 Ben Albahari 著 荣耀 译 本文翻译时间较早.欢迎指出任何误失.谢谢. 感谢以下人士的支持和反馈(按字母先后顺序) ...
- 【Java】集合_学习笔记
一.集合 1.集合类也称容器类,主要负责保存.盛装其他数据. 2.集合可以保存数量不确定的数据,保存具有映射关系的数据(也称关联数组). 3.Java5后提供一些多线程安全的集合类,放在java.ut ...
随机推荐
- python经典书籍必看:流畅的Python
作者:熊猫烧香 链接:www.pythonheidong.com/blog/article/26/ 来源:python黑洞网 目标读者 本书的目标读者是那些正在使用 Python,又想熟悉 Pytho ...
- vscode断点调试工程化服务端文件
一.创建express应用我们使用express-generator创建一个新的express应用.1.全局安装express-generator // 安装 sudo npm install exp ...
- Linux 安装zookeeper
分享到: 1.下载zokeeper 1.1 官网下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/ 1.2 链接:https:/ ...
- 置信区间-显著性-P-值
1.置信区间:误差范围(区间)在统计概率中就叫做置信区间:简单来说置信区间就是误差范围 我们用中括号[a,b]表示样本估计总体平均值的误差范围的区间,由于a和b的确切数值取决于你希望自己对于“该区间包 ...
- ant design select placeholder不生效原因
当select的value绑定一个state默认值时,如果默认值是''或null时,placeholder不生效 解决方案:默认值设为undefined
- 关于MDN,HTML入门来自MDN文档
由开发者和作者组成的开源社区:推动web发展, MDN(Mozilla Developer Network) 维基,共同维护做贡献: 需要使用到github账号进行验证,以此再创建MDN账号: HTM ...
- 输入、输出与Mad Libs 游戏
name1=input('请输入一个名字:') name2=input('再输入一个名字:') time1=input('请输入一段时间:') print('{},是傻子,{},{}找不到小栗旬'.f ...
- 使用Eclipse中的SVN提交代码遇到的问题
问题: Previous operation has not finished; run 'cleanup' if it was interrupted svn: Commit failed (det ...
- CSS3_标准盒子模型和怪异盒子模型
#box{ width: 200px; height: 200px; background-color: pink; } 标准盒子模型 box-sizing: content-box; padding ...
- java学习之路--I/O流
java基础学习总结——流 一.JAVA流式输入/输出原理