zoukankan      html  css  js  c++  java
  • TreeSet和LinkedHashSet类

    1、TreeSet

    • TressSet是一个基于Tree Map的Navigable Set实现。这些元素使用它们自然排序或者在创建的时提供Comparator进行排序,具体取决于使用的构造函数。此实现为基本操作add、remove和contains提供了log(n)的时间成本。
    • 这个实现不是线程安全的,如果多线程并发访问了TreeSet,并且至少一个线程修改了set,必须进行外部加锁,或者使用Sorted Set s =Collections.synchronizedSortedSet(new TreeSet(...))。
    • 这个实现持有fail-fast机制。

    2、LinkedHashSet类

    LinkedHashSet类继承于Set,LinkedHashSet类的继承体系:

     

    • LinkedHashSet是Set接口的Hash表和LinkedList的实现,这个实现不同于Hash Set的是它维护着一个贯穿所有条目的双向链表。此链表定义了元素插入集合的顺序。注意:如果元素重新插入,则插入顺序不会受到影响。
    • LinkedHashSet有两个影响其构成的参数:初始容量和加载因子。它们的定义于Hash Set完全相同。但是对于LinkedHashSet,选择过高的初始容量值的开销要比Hash Set小,因为LinkedHashSet的迭代次数不受容量影响。
    • LinkedHashSet也不是线程安全的,如果多线程同时访问LinkedHashSet,必须加锁,或者通过使用Collections.synchronizedSet。该类也支持fail-fast机制。
    欢迎批评指正,提出问题,谢谢!
  • 相关阅读:
    * 结束Activity
    进度条ProgressBar
    StackView实现叠加在一起的图片循环移动像循环队列一样
    AdapterViewFlipper功能 自动播放的图片库
    Spinner功能和用法
    SimpleAdapter 网络视图:带预览的图片浏览器
    AutoCompleteTextView
    Faster R-CNN
    Fast R-CNN
    100个大型机器学习数据集汇总(CV/NLP/音频方向)
  • 原文地址:https://www.cnblogs.com/xxeleanor/p/14410062.html
Copyright © 2011-2022 走看看