前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【一分钟知识】HashSet和TreeSet,HashMap与HashTable

【一分钟知识】HashSet和TreeSet,HashMap与HashTable

作者头像
java思维导图
发布2018-03-15 15:27:46
9200
发布2018-03-15 15:27:46
举报
文章被收录于专栏:java思维导图java思维导图

java思维导图

xmind导图配合精美文章,可视化学习,让java不再难懂。

HashSet和TreeSet

  • HashSet
    • 哈希表实现的,HashSet中的数据是无序的。
    • 不能保证元素的排列顺序,顺序有可能发生变化
    • 不是同步的
    • 集合元素可以是null,但只能放入一个null
    • 当向HashSet集合中存入一个元素时,HashSet会调用该对象的hashCode()方法来得到该对象的hashCode值,然后根据 hashCode值来决定该对象在HashSet中存储位置。
  • TreeSet
    • 二差树实现的,Treeset中的数据是自动排好序的,不允许放入null值
    • TreeSet是SortedSet接口的唯一实现类,TreeSet可以确保集合元素处于排序状态。
    • TreeSet支持两种排序方式,自然排序和定制排序,其中自然排序为默认的排序方式。
    • 向TreeSet中加入的应该是同一个类的对象。
    • TreeSet判断两个对象不相等的方式是两个对象通过equals方法返回false,或者通过CompareTo方法比较没有返回0。

HashMap与HashTable

  • HashMap
    • 线程不安全
    • 允许有null的键和值效率高一点
    • 方法不是Synchronize的
    • 要提供外同步有containsvalue和containsKey方法
    • HashMap 是Java1.2 引进的Map interface 的一个实现
    • HashMap是Hashtable的轻量级实现
  • HashTable
    • 线程安全
    • 不允许有null的键和值
    • 效率稍低
    • 方法是是Synchronize的有contains方法方法
    • Hashtable 继承于Dictionary 类、
    • Hashtable 比HashMap 要旧
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-02-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 java思维导图 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档