不允许重复的子接口--Set

Set接口不想List接口那样,对Collection接口进行了大量的扩充,而是完整地继承下了Collection接口。

集合接口定义了一个集合,并添加了类集中元素不允许重复的特性。它本身没有定义任何附加方法。在Set接口中有两个常用的子类:HashSet、TreeSet.

HashSet类

  HashSet扩展自AbstraSet并且实现了Set接口。它创建一个类集,该类集使用散列表进行存储,而散列表则通过称之为散列法的机制进行信息的存储。HashSet里面所保存的数据是不能够重复的,并且没有顺序。

  在散列(hashing)中,一个关键字的信息内容被用来确定唯一的一个值,称为散列码(hashcode),而散列码被当作与关键字相连的数据存储下标。关键字到散列码的转换是自动执行的--看不到散列码的本身。程序代码也不能直接索引散列表。散列表的优点在于即使对于相对大的集合,它也允许一些基本操作,如add()、contains()、remove()、size()等方法的运行时间保持不变。HashSet没有定义任何超类和接口之外的其他方法。

TreeSet类

如果需要为保存的数据进行排序,可以使用TreeSet子类完成。TreeSet为使用树来进行存储的Set接口提供了一个工具,对象是按着升序存储。访问和检索很快。在存储了大量的需要进行快速检索的排序信息时可以选择TreeSet。 

 

转载于:https://my.oschina.net/u/3718722/blog/1574054

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值