Set集合另一强悍的类LinkedHashSet

    xiaoxiao2021-03-26  45

    1 LinkedHashSet概述

    LinkedHashSet集合也是根据元素hashCode值来决定元素存储位置,但它同时使用链表维护元素的次序,这样使得元素看起来是以插入的顺序保存的。也就是说,当遍历LinkedHashSet集合里元素时,HashSet将会按元素的添加顺序来访问集合里的元素。

    LinkedHashSet需要维护元素的插入顺序,因此性能略低于HashSet的性能,但在迭代访问Set里的全部元素时将有很好的性能,因为它以链表来维护内部顺序。

     

    2 代码示例

    import java.util.*; public class LinkedHashSetTest { public static void main(String[] args) { LinkedHashSet books = new LinkedHashSet(); books.add("Java"); books.add("Linux"); books.add("C++"); books.add("算法"); System.out.println(books); // 删除 Java books.remove("Java"); // 重新添加 Java books.add("Java"); System.out.println(books); } }

     

    3 运行结果

    [Java, Linux, C++, 算法][Linux, C++, 算法, Java]

     

    4 运行说明

    输出LinkedHashSet集合中的元素时,元素的顺序总是和添加顺序一致。

    转载请注明原文地址: https://ju.6miu.com/read-550213.html

    最新回复(0)