A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Morrfree 中级黑马   /  2015-8-28 00:27  /  186 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Set(无序)
由来:
    继承了Collection接口.
特点:
    存储和取出元素无序,元素唯一.
方法:
方法与Collection完全相同
子类:
    |----hashSet,不同步.无序
|----treeSet,1.自然排序
2.选择排序
|----LinkedhashSet  有序

HashSet存储元素对象时,底层使用的是哈希表结构,哈希表结构可以保证HashSet集合中元素的唯一性.步骤:1.先使用hashCode()方法,比较元素对象的哈希值.2.调用equals()方法,比较内容是否相同.如果是基本数据类型的包装类与String类这样的类型都有自然顺序可以进行比较,而自定义的数据类型,没有重写这两个方法是无法保证元素对象的唯一性的,所以都要在自定义的类中重写这两个方法.


TreeSet:
    1.自然排序
所有的数据类型对象的元素必须实现Comparable接口,重写其compareTo()方法.否则就会报出类型转换异常.所以我们要向TreeSet集合中添加自定义类型的元素对象时,必须先实现Comparable接口,重写其中的方法.
int compareTo(T o)
比较此对象与指定对象的顺序。如果该对象小于、等于或大于指定对象,则分别返回负整数、零或正整数。
2.比较器排序
   自定义类必须实现Comparator,重写其compare()方法.

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马