博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java集合框架之Set
阅读量:6187 次
发布时间:2019-06-21

本文共 552 字,大约阅读时间需要 1 分钟。

Set集合

元素不可以重复,是无序。

方法与list相同

 

HashSet:不保证set的迭代顺序,不同步,内部数据结构是哈希表

如果存自定义对象则需要覆盖equals和hashCode方法

先比较hashCode,如果hashCode相同再equals方法比较,如果仍然相同则判断元素相同不再入容器,即add()方法不会把元素添加进来

 

LinkedHashSet:既有序又唯一

 

TreeSet:可以对set集合中元素进行排序,是不同步的

         判断元素是否唯一的方式就是通过比较方法comparable是否返回0,返回0就是相等

 

TreeSet对元素排序的方式一:

让元素(存入的对象)实现comparable接口并覆盖comparable方法

通过返回值(0,正数,负数)来判断大小并进行排序

如果返回负数,说明要添加的元素大于被比较的元素,则把要添加的元素放在二叉树的右边

相反…

 

 

方式二:

如果对象不具备自然排序,则可以让集合自身具备比较功能。

通过TreeSet构造函数注入一个实现Comparator接口并覆盖了compare方法的类对象来进行排序;

(注:当这两种方式同时使用时,会采用第二种方式)

转载于:https://www.cnblogs.com/orlion/p/4821100.html

你可能感兴趣的文章
JAVA之带转义字符的json字符串解析
查看>>
Mac上搭建Xcode9.0+appium1.6.5过程及链接模拟器测试app
查看>>
centos7配置haproxy
查看>>
MongoDB 3.0(1):CentOS7 安装MongoDB 3.0服务
查看>>
Android开发者指南(20) —— Testing
查看>>
Linux多线程实践(4) --线程特定数据
查看>>
guardian keytab生成不了
查看>>
08:特殊日历计算
查看>>
mongodb数据结构学习1--增删改查
查看>>
android中文api(80)——Gallery.LayoutParams
查看>>
Windows Embedded Compact 7加速生活化IT产品创新
查看>>
安装LSMS前需关闭MediaSense
查看>>
QTP引用外部脚本路径的设定(三)Instr函数的使用
查看>>
Linux 监控工具之Cacti使用详解(四)
查看>>
机房管理系列之共享打印服务器
查看>>
ORACLE_OCM.MGMT_DB_LL_METRICS报错
查看>>
文件服务器的配置与管理(3) 共享文件夹的创建与使用
查看>>
Windows快捷方式
查看>>
Essential Linux Device Driver附录A . Linux汇编
查看>>
eclipse导入的工程莫名报错误
查看>>