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机制。
    欢迎批评指正,提出问题,谢谢!
  • 相关阅读:
    CSS美化自己的完美网页
    HTML基础做出属于自己的完美网页
    前端基础知识
    ajax应用篇
    mysql的介绍和安装
    MYSQL系列之(二)
    TP框架控制器的空操作
    Thinkphp框架基础
    PHP之Smarty模板引擎
    App 开发:Hybrid 架构下的 HTML5 应用加速方案
  • 原文地址:https://www.cnblogs.com/xxeleanor/p/14410062.html
Copyright © 2011-2022 走看看