Set的总结
Set最重要的操作是查找,为查找而设计。存入HashSet的元素必须定义hashCode();
Set不保存重复的元素,元素必须唯一。通过equals()方法一确保对象的唯一性。
Set中最常被用于归属性,可以很容易的询问某个对象是否在Set中。Set是基于对象的值来确定归属性的,contains()测试Set的归属性。
Set具有Collection完全一样的接口,没有额外的功能。Set就是Collection,只是行为不同。
HashSet专门对快速查找进行了优化。
HashSet内部数据结构是哈希表,不同步。
HashSet使用了散列,所以输出是没有规律的无序的,但是速度快。
TreeSet将元素存储在红-黑数数据结构中。
TreeSet中元素必须实现Comparable接口,此接口中comparaTo()比较对象与制定对象的顺序。
TreeSet可以对集合中的元素进行排序,结果也是排序的,不同步。
LinkedHashSet具有HashSet的查询速度,且内部使用链表维护元素插入的顺序。在迭代遍历Set时,
结果会按插入的次序显示。元素也饿必须定义hashCode()方法。
常用HashSet,因为快。
随机推荐
- SqlMapConfig.xml配置文件的配置内容
SqlMapConfig.xml中配置的内容和顺序如下: * properties(属性) * settings(全局配置参数) * typeAliases(类型别名) * typeHandlers( ...
- Facebook对MySQL全表扫描性能的改进
原文博客如下: http://yoshinorimatsunobu.blogspot.com/2013/10/making-full-table-scan-10x-faster-in.html 如下是 ...
- 常见的C语言内存错误及对策(转)
http://see.xidian.edu.cn/cpp/html/483.html 一.指针没有指向一块合法的内存 定义了指针变量,但是没有为指针分配内存,即指针没有指向一块合法的内存.浅显的例子就 ...
- Apache配置伪静态
Apache配置伪静态 注意:本文中关于Apache的配置修改,一定要记得重启Apache服务 伪静态的实现有多种方法,比如通过获取path_info信息使用php逻辑来达到伪静态,使用Apache提 ...
- 基于jCOM搭建Java-微软信息桥梁(下)
第一部分析了BEA提供的Java/COM互操作解决方案—jCOM的实现原理:本文是第二部分,比较全面地分析了Weblogic Server的jCOM实现技术之后,通过一个具体实例来说明了jCOM的具体 ...
- [label][JavaScript扩展] JavaSCript扩展
http://www.idangero.us/sliders/swiper/ ,swipper for mobile terminal.
- 使用Intellij Idea连接Team Foundation Server (TFS)实现代码版本管理
Intellij Idea是一个Java项目开发工具,支持Windows,MAC OS和Linux的跨平台开发环境,具备良好和智能的用户界面,在欧洲市场拥有很多粉丝.https://www.jetbr ...
- c# 前后日期设置
List<string> list = new List<string>(); //根据当月 显示前6个月 for(int i=0;i<6;i++) { list.add ...
- 使用NPOI时ICSharpCode.SharpZipLib版本冲突问题解决
系统原来引用的ICSharpCode.SharpZipLib是0.84版本的, 添加了2.3版本的NPOI引用后,报版本冲突错误,因为NPOI用的ICSharpCode.SharpZipLib是0.8 ...
- .Net Core MVC初学习
.net core已经出来很长一段时间了,没有很好的学习过,现在工作不那么忙了,参考官方文档,在这里记录自己的学习过程! ASP.NET Core 是一个跨平台的高性能开源框架,用于生成基于云且连接 ...