关于集合
来源:互联网 发布:俯瞰风景 知乎 编辑:程序博客网 时间:2024/05/21 10:20
把具有相同性质的一类东西,汇聚成一个整体,就可以称为集合。
集合框架是为表示和操作集合而规定的一种统一的标准的体系结构。任何集合框架都包含三大块内容:对外的接口、接口的实现和对集合运算的算法。
-------------------------------------------------------------------------------------------------------------------------
List和Set继承自Collection接口。
Set不允许元素重复。HashSet和TreeSet是两个主要的实现类。
List有序且允许元素重复。ArrayList、LinkedList和Vector是三个主要的实现类。
Map也属于集合系统,但和Collection接口不同。Map是key对value的映射集合,其中key列就是一个集合。key不能重复,但是value可以重复。HashMap、TreeMap和Hashtable是三个主要的实现类。 SortedSet和SortedMap接口对元素按指定规则排序,SortedMap是对key列进行排序。
Vector和HashTable是线程同步的(synchronized)。
ArrayList和HashMap不是线程同步的,因此性能比Vector和Hashtable要好。
List:
只对数据进行访问的建议使用ArrayList
如果做很多的插入删除操作的建议使用LinkedList
Map:
HashMap看重访问速度。
TreeMap看重键的顺序
LinkedHashMap按照顺序插入
Set:
HashSet提供最快的查询速度
TreeSet保持元素有序
LinkedHashSet保持元素插入顺序
基于Array的List(Vector,ArrayList)适合查询,而LinkedList(链表)适合添加,删除操作
List基本上都是以Array为基础。但是Set则是在HashMap的基础上来实现的,这个就是Set和List的根本区别
HashSet的存储方式是把HashMap中的Key作为Set的对应存储项
Comparable
调用java.util.Collections.sort(List list)方法来进行排序的时候,List内的Object都必须实现了Comparable接口。
Comparator
java.util.Collections.sort(List list,Comparator c),可以临时声明一个Comparator 来实现排序。
- 关于集合
- 关于集合
- 关于集合
- 关于集合
- 关于集合
- 关于集合
- 关于集合
- 关于集合
- 关于集合
- 关于集合框架
- 关于flex集合
- 关于Java集合
- java 关于集合框架
- 关于集合框架
- 关于 泛型、map集合
- 关于java集合
- 关于集合的易错点
- C# 关于集合
- 多线程,同步,锁
- 方向转变
- less 命令最基本的用法
- wp_query函数在WordPresss中的运用
- ASP.NET下FCKeditor配置方法全解
- 关于集合
- 约瑟夫环非递归算法分析
- Json
- struts2 获取checkbox
- c#中DllImportAttribute用法汇总
- 智能指针Boost.smart_ptr学习1--为什么使用智能指针
- javascript高级程序设计学习(六)-----事件
- GeekOS源代码编译时的packed属性被忽略问题的解决
- C++ 四个强制类型转换符和RTTI