JAVA容器小结1
来源:互联网 发布:软件测试报告缺陷总结 编辑:程序博客网 时间:2024/06/04 18:35
对Java中一些不太常用的方法和相关知识点简要介绍
1.添加一组元素
Arrays.asList() 参数:数组或元素列表
Collections.addAll() 参数:Collection对象,数组, 元素列表
2. 一些不常用方法
- subList() : 求一个list的子集合
- containsAll() : 一个集合是否包括另一个集合的所有元素
- retain() : 求2个集合的交集,剔除非交集内的元素
3. 迭代器Iterator(也作为一种设计器模式)
统一了对容器的访问方式,在Collection中提供了iterator()接口产生迭代器:有方法 hasNext() next() remove()子类ListIterator可作双向移动
4. LinkedList可作为对栈、队列或双端队列的实现
- 获取:
getFirst() / element() :列表空,抛NoSuchElementExceptionpeek() : 列表空,返回null
- 移除:
removeFirst() / remove : 列表空,抛NoSuchElementExceptionpoll() : 列表空,返回null
5. set集合较常用于测试元素归属性,contains()
不能存放重复元素,放入元素必须重写equals()和hashcode()方法
6. map 对象与对象的映射
- 键的set:keySet() 从接口中看出Key不能重复
- 值的Collection:values() 值可以重复
7. Collection与Iterator
- Collection:描述所有序列容器的共性的根接口,实现时必须强制实现iterator()和size()
- Iterator:为解决对容器的统一遍历,实现:index, hasNext(), next(), remove();实现它对序列的约束相对较少
8. Foreach与Iterator
- foreach:适用于:1)数组;2)Collection对象;3)实现了Iterable的类
- Iterator:Java SE5引入了包含一个能产生迭代器Iterator的iterator()方法,在Java SE5中大量的类都实现了Iterable,包括Collection不包括Map
9. 适配器方法:当有一个接口而且需要另一个接口时,可添加一个生成此接口的方法(适配一个接口出来)
10. Arrays.asList():使用底层的数组作为物理实现,不想修改原始数组,就在另一个容器中创建一个副本
总结JAVA中持有对象的方式:
- 数组:数字与对象关联;类型明确;可多维;可保存基本类型;定长
- Collection:单一元素;Map:相关联键值对。结合泛型不必类型转换;动长;不持基本类型但有自动包装机制解决
- List:同数组,数字与对象关联。ArrayList:随机访问;
- LinkedList:长于插入/删除, 对Queue和Stack提供实现
- Map:HashMap:快速访问;TreeMap:键有序;
- LinkedHashMap:插入有序,快速访问
- Set:元素唯一。 HashSet:快速访问;TreeSet:元素有序;LinkedHashSet:以插入顺序保存
简单类图结构
0 0
- JAVA容器小结1
- JAVA容器小结
- java 容器类 小结
- JAVA容器小结2
- java容器类小结
- Java容器类小结
- Java&&持有对象(容器小结)
- Java中容器基础知识小结
- Java容器小结【Java学习笔记】
- java中容器(Collection)的小结
- java容器(持有对象方式)小结
- Java容器小结和使用示例
- 容器 小结
- Java容器篇小结之Map自问自答
- java容器类(1)
- Java容器填充-1
- java容器类(1)
- Java基础--容器(1)
- sshfs 远程挂在文件系统
- 地图开发汇总
- LeetCode 2 - Add Two Numbers
- windows无法启动MySQL服务 错误1067
- BroadcastReceiver生命周期的探究
- JAVA容器小结1
- SQL 删除属性重复的记录
- 如何在Delphi中安装组件
- LeetCode Binary Tree Paths
- hdu1073
- Java____HTTP协议详解(web client通过http与service通信)
- CameraLerp
- 脚本乐园 shell中getopts命令行参数处理
- Redis学习笔记(二)--数据类型