第十一章 持有对象

11.2基本概念

java容器类基本用途保存对象,划分两个概念

  • 1)Collection:存放一组对象的方式
  • 2)Map:有映射关系的数据

11.2添加元素

使用Arrays.asList() 生成的数组是不能进行add和delete的,因为他底层是采用数组存储,大小是固定了.

容器类型 :
ArrayList
LinkedList
HashSet(hash算法)
TreeSet(二叉排序树按照结果的生序排序)
LinkedHashSet
HashMap
TreeMap
LinkedHashMap

List比较  ArrayList 数据查找比较方便,但是中间插入,删除的代价会比较高,涉及到需要移动数据.
LinkedList 中间插入数据,和删除 非常廉价.而且具有栈的方法.新代码中stack可以用LinkedList代替
迭代器:
Iterator
ListIteretor (只能用于List 可以双向滑动)
PriorityQueue优先级队列.

总结:
1.如果要大量的随机访问使用ArrayList,如果要经常向表中间插入或删除元素用LinkedList
2.需要使用各种Queue以及栈的行为,使用LinkedList
3.hashMap设计快速访问,treeMap保持键值处于排序状态,LinkedHashMap保持按元素插入的顺序
4.set :hashSet 快速访问,treeSet排序,LinkedHashSet 插入顺序
5.新程序中不要使用过时的vector,hashtable,stack

通过迭代器模式,能更好的看懂java.util 容器包


image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容