有序的集合,就是LinkedList,内部通过双向链表实现,LinkedHashMap为基础。
package collection.lession3;
import java.util.Arrays;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.Set;
/**
* 老紫竹JAVA提高教程(3)-认识Set集合之LinkedHashSet。<br>
* <br>
* LinkedHashSet与HashSet的区别就是数据严格按照插入的顺序存放。<br>
* 删除之后会去掉那个位置,新增的数据将在集合的末尾。<br>
* HashSet 内部使用HashMap实现<br>
* 而LinkedHashSet内部使用LinkedHashMap实现。
*
* @author 老紫竹 JAVA世纪网(java2000.net)
*
*/
public class Lession3 {
public static void main(String[] args) {
test(new HashSet<Integer>());
test(new LinkedHashSet<Integer>());
}
public static void test(Set<Integer> set) {
System.out.println(set.getClass().getName());
// 增加10个数据
for (int i = 100; i <= 110; i++) {
set.add(i);
}
// 看看里面数据的情况
showSet(set);
// 删除一个数据
set.remove(101);
// 看看删除后的情况
showSet(set);
// 增加三个数据,看结果
set.add(98);
set.add(101);
set.add(118);
showSet(set);
}
/**
* 显示Set里面的数据。
*
* @param set
*/
private static void showSet(Set<Integer> set) {
System.out.println(Arrays.toString(set.toArray(new Integer[0])));
}
}
测试:
尝试按照自己的意愿,控制LinkedHashSet里面数据的顺序,比如删除第一个,再加入,则其出现在了末尾了。这个很像排队买票,一旦你中途退出了,就只能重新排队。是不允许加塞的。
总结:
当我们处理集合,有想掌握其顺序的时候,可以考虑这个,当然List也是很好的选择,不过Hash算法,在查找数据的时候,比List性能要高的。
<!-- 分页 --><!-- 分页end -->
分享到:
相关推荐
LinkedHashSet 是 Java 中的一个集合类,它是 HashSet 的子类,同时也实现了 Set 接口。与 HashSet 不同的是,LinkedHashSet 保留了元素插入的顺序,并且具有 HashSet 的快速查找特性。下面是关于 LinkedHashSet 的...
本文将深入探讨Java集合类的汇总,包括List、Set和Map这三大核心接口及其实现类。 首先,让我们从List接口开始。List是一种有序的集合,允许有重复元素,并且支持通过索引来访问元素。ArrayList和LinkedList是List...
import java.util.LinkedHashSet; public class HashSetTest { public static void main(String[] args) { HashSet hs = new LinkedHashSet(); hs.add("hahah"); hs.add("hehe"); hs.add("heihei"); hs....
在准备大数据面试的过程中,Java基础是必不可少的一部分,尤其聚焦于集合类、多线程和JVM这三大核心领域。下面将分别对这三个方面进行深入探讨。 **一、Java集合类** Java集合框架是处理对象组的重要工具,它包括...
根据给定文件的信息,我们可以总结出以下关于Java集合的相关知识点: ### 一、集合容器概述 #### 1. 什么是集合? 集合(Collection)是指在Java中用来存储、检索及操作一组对象的一种容器。它是一种高级的数据...
Java 集合类详解 Java 集合类是 Java 语言中的一种基本数据结构,用于存储和操作大量数据。集合类可以分为三大类:Collection、List 和 Set。 Collection 是集合框架中的根接口,提供了基本的集合操作,如 add、...
Java 集合类可以分为 Set、List 和 Map 三种体系,分别用于存储无序、不可重复的集合、有序、可重复的集合和具有映射关系的集合。 Collection 接口是 Java 集合框架的核心接口,定义了基本的集合操作方法,如 add...
教程从简单的编程示例开始,帮助读者快速入门Collections Framework,并逐步深入到集合的数学定义与Java中的Set、Map及Collection之间的差异等更复杂的概念。此外,教程还讨论了Java Collections Framework的历史...
Java集合框架是Java编程语言中的一个重要组成部分,它提供了一种高效、灵活地管理对象的方式。在Java中,集合主要分为两大接口:...了解并熟练掌握这些集合的特性和使用场景,对于提高Java编程效率和代码质量至关重要。
### Tedu一阶段Java Set集合和List集合详解 #### 一、集合概述 - **集合的概念**:在Java中,集合是一种容器,用于存储多个对象。它可以存储不同类型的对象,并且提供了一系列的操作来管理这些对象。 - **...
Java 集合框架提供了多种类型的集合类,包括 List、Set、Map 等,每种集合类都有其特点和使用场景。 List 集合 List集合是一种有序的集合,元素可以重复,元素之间可以有顺序关系。常见的 List 集合类有 ...
在Java集合框架中,`Set`接口是`Collection`接口的子接口,它不允许包含重复元素。本文将详细介绍`Set`接口及其三种主要实现类:`HashSet`、`LinkedHashSet`和`TreeSet`。 ### 11.3.1 实现类HashSet `HashSet`类是...
【Java集合】 Java集合框架是Java编程语言中用于存储和操作对象的工具,它提供了多种数据结构,如列表、集、映射等,以适应不同的数据处理需求。集合类通常位于`java.util`包下,是Java程序员必备的知识点。 1. **...
### Java集合框架和泛型机制 #### 11.1 Java集合框架概述 在Java中,集合框架(Collection Framework)是一套用于存储和操作对象集合的API。它为程序员提供了丰富的数据结构,使得数据管理更加高效和灵活。集合...
### Java集合小结 #### 一、集合的概念与重要性 集合是Java编程语言中用于存储、管理和操作数据的一种重要工具。它提供了多种数据结构来适应不同的应用场景,从而有效地提高程序开发效率。从数据结构的角度来看,...
在Java编程语言中,集合框架提供了多种数据结构来存储和操作数据,其中最常用的是`Set`、`Map`和`List`。这三种集合类型各自具有独特的特性和用途,理解它们之间的区别与联系对于有效地使用Java进行数据管理至关重要...
在Java编程语言中,集合框架(Collections Framework)是处理数据的核心组件之一,它提供了存储和操作对象的各种方式。本文将深入探讨Java中的两种重要容器类——`List`和`Set`,并分析它们之间的区别以及各自的适用...
Java集合框架是Java编程语言中的一个核心部分,它为数据存储和管理提供了高效且灵活的解决方案。本思维导图及总结旨在深入理解并掌握Java集合的相关概念和使用方法。 首先,我们来了解一下Java集合框架的基本构成。...