java Collection 集合
来源:互联网 发布:专业淘宝食品图片拍摄 编辑:程序博客网 时间:2024/05/16 09:58
Collection 集合下面常用子接口List和Set
List:
特点:元素线性存储,存取有序,元素可重复,有索引
List常用实现类:
Vector:底层数组实现,增删慢,查询快,线程安全,效率相对较低
ArrayList:底层数组实现,增删慢,查询快,线程不安全,效率较Vector高
LinkedList:底层双向;链表实现,增删快,查询慢,线程不安全,效率较高
如何选择使用哪个集合:增删多,查询少选择LinkedList;增删少,查询多选择ArrayList;如果增删和查询都多选择ArrayList。
Set:
特点:存取无序(除LinkedHashSet外),无索引,元素不可重复
Set常用实现类
HashSet:按照hash算法来存取元素,存取速度快,在向集合中添加元素时,会先比较该元素的hash码在集合中是否存在,不存在则添加,存在再用equals方法比较元素属性值,true则不添加,false则添加;因此在向Set集合中存自定义对象时通常需要重写equals和hashCode方法。
LinkedHashSet:是Set集合中唯一能保证存取有序的集合,底层是双向链表实现,和HashSet用法相同。
TreeSet:实现了SortedSet接口能够对集合中的元素排序,底层是二叉树,只能存储同一种类型的元素;在存自定义元素的时候需要指定排序方式。
自定义元素实现比较的两种方式:
1.实现Comparable 接口 重写 compareTo 方法
2.Comparator比较器,通过TreeSet构造函数传入一个Comparator比较器的实现类,来完成比较
当Comparable和Compartor同时存在时会优先使用Compartor比较器,在工作中推荐使用Compartor比较器
- java Collection (java 集合)
- java collection(java集合)
- java集合-----Collection
- Java集合Collection介绍
- Java集合框架Collection
- Java集合框架Collection
- java集合Collection
- Java 集合框架-Collection
- java中的集合Collection
- java 集合-001 Collection
- Java 集合(Collection)
- Java collection 集合分析
- Java Collection框架集合
- Java Collection (集合框架)
- java集合框架->Collection
- Java Collection与集合
- Java集合之Collection
- java 集合Collection架构
- python--string模块
- 连续子数组的最大值C++
- 【拜小白opencv】18-使用VideoCapture类读取播放视频操作--多信息版
- 深入理解linux内核-ch02
- java实现二叉树及(层序,先序,中序,后序,节点查找)
- java Collection 集合
- iOS的SVN问题
- ES6中新增数组方法与ES5之间的区别
- uva 679 小球下落
- 递归实现二叉树
- python scrapy爬虫爬取图片简易方法,使用Images模块
- Oracle数据库之SQL子查询详解
- 设计模式(18) 迭代器模式(简单入门 行为模式)
- 网络编程~epoll