`
randy.chen
  • 浏览: 8603 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

list map set及所有子类 区别与使用总结

    博客分类:
  • JAVA
阅读更多
括号为是否线程安全
list: LinkedList(no) ArrayList(no) Vector(yes) Stack(yes)
map: HashMap(no) LinkedHashMap(no) HashTable(yes) WeakHashMap TreeMap
set: HashSet(no) LinkedHashSet(no) SortedSet TreeSet
最常用的好像为每行的前两个

特征:
1. Linked开头的适合快速插入,删除元素, linked维护元素插入的次序
2. Set 在 HashMap 的基础上实现, 所以Set结尾的key是不会重复的
3. Tree开头的是每次改变发生排序的, 速度慢

适 用:
1. 需要快速插入,删除元素, 用 LinkedList; 需要快速随机访问元素,用 ArrayList
2. Vector 类似 ArrayList, 但是是同步的
3. Stack 继承 Vector , 是后进先出的堆栈

4. HashMap, put进去的对象位置会发生变化, LinkedHashMap 则不会

5. HashSet 是专门为快速查询而设计的, 插入会产生排序(LinkedHashSet 不会), 存入HashSet的对象必须定义hashCode方法
6. SortedSet 是保持元素的有序顺序的Set接口, 添加到 SortedSet 实现类的元素必须实现Comparable接口, TreeSet 类是它的唯一一份实现


其 它:
1. 非同步的可以进行外部同步,或者使用Collections.synchronizedMap()的方法包装成一个thread-safe的 Map/Set
2. LinkedHashMap支持两种排序:插入顺序、访问顺序。前者是指按照插入时的顺序排序,后者是指按照最旧使用到最近使用的顺序
3. 既然 Set 在 HashMap 的基础上实现, 那么 HashMap 和 HashSet 有什么区别吗?
答: HashMap提供get和put方法, 允许null 值和null 键; HashSet 提供add、remove、contains和size方法, 允许null 元素; 其它未知
分享到:
评论

相关推荐

    集合框架List、Map、Set接口及其子类综合对比

    Java基础知识汇总之集合框架List、Map、Set接口及其子类综合对比

    List Set Map以及子类的比较 .docx

    Collection 集合框架的顶级接口是 Collection,下面有三个主要的子接口:List、Set 和 Map。 List 集合是一种有序集合,可以存储重复元素,每个元素都有索引。ArrayList 和 LinkedList 是 List 集合的两个常用的...

    JAVA集合map、list、set详解

    详细描述map、list、set的常用子类特性,各个场景的适用。

    集合框架包含collection和map的子类

    集合框架包含collection和map的子类。其中collection包含list、set和queue。map包括hashmap、hashtable和treemap

    map,list,set,stack,queue,vector等区别和特点1

    首先,Collection接口是所有集合类型的父接口,它分为两个主要子接口:List和Set。List接口用于存储有序的、可重复的元素,它允许通过索引来访问元素,如ArrayList和LinkedList。ArrayList基于数组实现,提供快速...

    Java集合Collection、List、Set、Map使用详解

    ### Java集合Collection、List、Set、Map使用详解 #### 集合框架概述 ##### 容器简介 在Java编程中,容器(Container)的概念至关重要。容器是用来存储和管理对象的一种方式,它允许程序员高效地处理大量数据。...

    Dart 集合类型List Set Map详解 以及循环语句 forEach map where any every.zip

    本教程将深入探讨三种主要的集合类型:List、Set和Map,以及几种常用的循环语句,如forEach、map、where、any和every。这些概念对于理解Dart中的数据处理至关重要。 1. **List**: List是有序的元素集合,可以包含...

    Java集合排序及java集合类详解(Collection、List、Map、Set)讲解.pdf

    Java集合排序及java集合类详解(Collection、List、Map、Set)讲解 Java集合框架是Java语言中最重要的组件之一,能够正确使用Java集合框架对于Java程序的开发具有无比的好处。本文将详细解释Java集合框架的实现原理、...

    Java集合排序及java集合类详解(Collection、List、Map、Set)

    本文将围绕Java集合框架进行详细介绍,包括Collection、List、Set、Map等基本概念及其实现原理。 #### 容器简介 在计算机科学中,容器是一种用来存储数据的对象。Java集合框架提供了一组接口和实现,这些容器用于...

    Java集合排序及java集合类详解(Collection、List、Map、Set

    本文将深入探讨Java集合框架的四大核心组件:`Collection`、`List`、`Map`和`Set`,以及它们的排序方法。 ### 1. 集合框架概述 #### 1.1.1 容器简介 在Java中,容器(Containers)是用来存储和管理对象的结构。...

    Collectiion与Map类图

    本篇文章将详细探讨这两个接口及其子类在Java 8中的特性与用法。 首先,我们来了解一下Collection接口。Collection是所有单列集合的父接口,它提供了存储和操作一组对象的基本方法。在JDK 1.8中,Collection接口的...

    Java集合框架使用总结

    ### Java集合框架使用总结 #### 前言 本文旨在为读者提供关于Java集合框架的概览性介绍,帮助理解其整体架构与设计理念。对于希望深入掌握特定接口或类使用方法的学习者,建议查阅官方提供的Java API文档。 #### ...

    Java软件开发实战 Java基础与案例开发详解 11-5 Map接口 共12页.pdf

    Map接口与其他集合接口(如List和Set)不同之处在于,它允许每个键关联一个值,并且每个键都是唯一的。 #### 二、Map接口的基本概念 Map接口中的元素由两部分组成:键(key)和值(value)。键用于唯一标识一个值...

    Hashtable和HashMap的区别:

    ### Hashtable与HashMap的区别详解 #### 一、基本概念与历史背景 在Java编程语言中,`Hashtable` 和 `HashMap` 都是用来存储键值对的数据结构。这两种数据结构虽然相似,但是在实现细节上存在显著差异。 1. **...

    Java面试总结

    Java面试总结涵盖了JavaSE到...List、Map和Set接口分别对应不同的集合类型,它们在存取元素时有不同的特点。例如,List是有序集合,可以包含重复元素;Map是键值对集合,不允许重复键;Set是不允许重复元素的集合。

    java数据结构 ArrayList、Stack、Map

    **ArrayList** 是Java集合框架中的一个重要类,位于`java.util`包下,它实现了List接口。ArrayList实际上是一个动态数组,可以容纳任意类型的对象。它的主要特点是可以通过索引来访问和修改元素,索引从0开始。...

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

    《Java 基础核心总结》 Java 概述 什么是 Java2 Java 的特点Java 开发环境 JDK JRE Java 开发环境配置 Java 基本语法 数据类型基础语法运算符 Java 执行控制流程条件语句 if 条件语句 if...else 条件语句if...else ...

    收集高频Java面试题以及面试时候被问到的面试题.rar

    Java基础 抽象类和接口的区别 一个类只能继承一个抽象类...List、Set、Map的区别 1. List 可存储重复对象; 是一个有序集合,保存了每一个元素的插入顺序,输出顺序就是插入顺序; 常见的实现类有ArrayList、LinkedList

Global site tag (gtag.js) - Google Analytics