`
cakin24
  • 浏览: 1332470 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

Set集合另一强悍的类LinkedHashSet

    博客分类:
  • java
阅读更多

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集合中的元素时,元素的顺序总是和添加顺序一致。

0
0
分享到:
评论

相关推荐

    Java—Set集合详解(HashSet/LinkedHashSet/TreeSet/EnumSet)

      Set集合类似于一个容器,程序把很多对象保存到Set集合中,Set集合对添加顺序不记录,当有重复的对象保存到Set集合时,不会新增后加的重复对象。 Set集合的特点 Set集合无重复元素,add()方法添加相同元素时,...

    java集合-LinkedHashSet的使用

    LinkedHashSet 是Java中的一个集合类,它是基于哈希表和双向链表实现的。 以下是关于 LinkedHashSet 的一些重要信息: 继承关系:LinkedHashSet 继承自 HashSet 类,并且实现了 Set 接口。因此,它具有 HashSet 和...

    java集合知识-map、set等

    Set:元素不可以重复,是无序。p508 Set接口中的方法和Collection一致。 |--HashSet: 内部数据结构是哈希表 ,是不同步的。 如何保证该集合的元素唯一性呢? 是通过对象的hashCode和equals方法来完成对象唯一性的...

    Java集合框架Set接口.pdf

    LinkedHashSet是基于链表和哈希表实现的Set集合,它保证集合中元素的插入顺序。在插入元素时,它既会将元素插入到链表的末尾,又会将元素的哈希值和引用存储到哈希表中。因此,LinkedHashSet在性能上稍逊于HashSet,...

    40道java集合面试题含答案(很全很详细)

    Java集合类是Java.util包中的重要内容,它提供了一套性能优良、使用方便的接口和类,用于处理对象的集合。这些类主要用于存储、检索、操作一组对象数据。 Java集合类主要包括两种类型的容器:Collection和Map。...

    java中set、list和map的使用方法实例

    // set容器接口的实现类有HashSet和 LinkedHashSet两个 // HashSet不保证迭代顺序, LinkedHashSet按照元素插入的顺序迭代. // 学习List对象容器的使用 // List容器中的对象允许重复 // 常用的list接口的实现类有...

    Java集合框架完整说明便于了解集合

    Comparator的区别,List和Set集合详解,List和Set的总结,HashMap和HashTable的⽐较,Map的遍历,ArrayList 与 Vector 区别呢?为什么要⽤Arraylist取代Vector呢?HashSet与TreeSet与LinkedHashSet对⽐,HashMap 的⻓...

    Java基础知识点.html

    哈希值 LinkedHashSet TreeSet 自然排序Comparable 比较器排序Comparator Set集合 并发修改异常 LinkedList集合 ArrayList集合 List集合 Collection集合概述 冒泡排序 Object 异常 Math 包装类 Calendar类 ...

    【后端】java基础(4.2)java中级基础之集合——List

    接下来我们来说说Collection的另一个子接口Set。和List一样,Set也可以用来存放多个元素。我们主要来学习Set的三个实现类。 HashSet TreeSet LinkedHashSet 同样,它们之间的相同点有: 都是Set的实现类 存入的元素...

    java集合-HashSet的使用

    HashSet 是 Java 中的一个集合类,它实现了 Set 接口并提供了基于哈希表的无序、不重复元素的集合。具体来说,它是通过哈希表(实际上是一个 HashMap 实例)来存储元素的。 以下是 HashSet 的一些主要特点: 无序...

    Java 基础核心总结 +经典算法大全.rar

    Collections 类集合实现类特征图 泛形 泛型的使用 用泛型表示类 用泛型表示接口泛型方法 泛型通配符 反射 Class 类Field 类Method 类ClassLoader 类 枚举 枚举特性 枚举和普通类-样枚举神秘之处 枚举类 I/O File...

    JAVA入门学习笔记(1)– Collection集合的基础知识

    集合类4.1 集合的实现类4.1.1 ArrayList 4.1.2 LinkedList 4.1.3 Vecotor4.1.4 HashSet 4.1.5 LinkedHashSet 4.2 Conllections工具类5. 集合的遍历5.1 迭代器5.2 增强for循环(jdk1.5+)* 附加知识点1.数据结构1.1 栈...

    超全Java集合框架讲解.md

    超全Java集合框架讲解 - 超全Java集合框架讲解 - 集合框架总览 - Iterator Iterable ListIterator - Map 和 Collection 接口 - Map 集合体系详解 - HashMap - LinkedHashMap - TreeMap - WeakHashMap - ...

    Java面试题,冲冲冲!.rar

    - 常见实现类有HashSet、TreeSet和LinkedHashSet等。 3. Queue(队列): - 以队列的方式存储元素,遵循先进先出(FIFO)的原则。 - 可以在队列的两端进行操作,即添加元素到队尾或移除队首元素。 - 常见实现类有...

    【Java】常用数据集合体系和特点(汇总)

    ArrayList 类(数组)② Vector 类(数组、线程同步)③ LinkedList 类(链表)④ CopyOnWriteArrayList 类(线程安全且高效的List)1.2 Set 集合① HashSet 类(HashCode)② LinkedHashSet 类(记录插入顺序)③ ...

    JAVA.SE List,collections,set接口

    文章目录1List接口1.1 Array List1.2LInkedList2.collections类2.1是一个集合工具类,内部保存的是静态方法2.2可变参数3.set接口3.1set接口的特点3.2hashSet3.3LinkedHashSet3.4TreeSet. 1List接口 List接口继承...

    javaSE代码实例

    14.6.4 LinkedHashSet类的使用 291 14.6.5 SortedSet接口与TreeSet类 292 14.6.6 自定义满足Sorted集合的类 293 14.6.7 定制SortedSet的排序规则 296 14.6.8 集合的遍历 298 14.6.9 使用for-each循环遍历...

    Java从入门到高级(第二天)

    经过不断的学习 博主更新了Java进阶高级第二天...2.4 LinkedHashSet类 2.5 可变参数 3. Collections 3.1 Comparator比较器 3.2 Comparable和Comparator两个接口的区别 4. Map集合 4.1 Map常用子类 4.2 Map接口中的常用

Global site tag (gtag.js) - Google Analytics