zoukankan      html  css  js  c++  java
  • 规则集之探究何时使用HashSet、LinkedHashSet以及TreeSet?

    前言

      Java集合框架三种主要类型的集合:规则集(Set)、线性表(List)、队列(Queue)。Set用来存储不可重复的元素;List用来存储有元素构成的有序的集合;而Queue则用于存储用先进先出处理的对象。

    Set接口的三个具体类包括:散列集HashSet、链式散列集LinkedHashSet、树形集TreeSet

    本章节,主要讲解何时使用HashSet、LinkedHashSet以及TreeSet较为最佳。


    HashSet

      HashSet可以用来存储互不相同的元素。考虑到效率的因素,添加到HashSet中的对象必须实现hashCode()方法。往HashSet中存储元素时,元素并不会按照被插入时的顺序存储,原因是因为HashSet中的元素没有特定的顺序。

      如若要强制有顺序,此时,就需要LinkedHashSet上场了。如果不需要维护元素被插入的顺序,就是你使用HashSet的大好时机,因为它会比LinkedHashSet更加的高效。 

    LinkedHashSet

      LinkedHashSet是通过用一个链表的实现来扩展HashSet,从而支持了对HashSet中的元素的排序。所以LinkedHashSet可以按照元素插入时的顺序进行提取。

    TreeSet

      当需要一个排好序的集合的时候,就可以从这个散列集中创建一个树形集。

  • 相关阅读:
    微信支付
    集成支付宝SDK流程
    使用ASIFormDataRequest完成用户的登录操作
    本地推送UILocalNotification
    iOS 远程推送通知 详解
    iOS 8 中如何集成 Touch ID 功能
    iOS指纹识别Touch ID的安全性探讨
    iOS 支付(含支付宝、银联、微信)
    iOS 社交化分享功能
    Python3内建函数sorted
  • 原文地址:https://www.cnblogs.com/lyc-smile/p/7517433.html
Copyright © 2011-2022 走看看