List、Set、Map三者有什么区别呢?
下文笔者讲述list,Set,Map三者的区别说明,如下所示
集合容器分类说明
Java集合容器分: Collection和Map两大类 Collection集合的子接口有Set、List、Queue
List简介
List是一个有序集合(元素存入集合的顺序和取出的顺序一致) List中的元素可以重复 List中可以插入多个null元素,元素都有索引 List中常见的实现类有ArrayList、LinkedList和Vector
Set简介
Set一个无序的存储容器(存入和取出顺序有可能不一致) Set中的元素不可以存储重复元素 Set中只允许存入一个null元素,即Set中元素具有唯一性 Set的常见实现类有 HashSet、LinkedHashSet及TreeSet
Queue/Deque
Queue是Java的标准队列结构的实现 拥有集合的基本功能 Queue还支持先入先出(FIFO, First-in-First-Out) 或后入先出(LIFO,Last-In-First-Out)等特定行为 Queue常用实现类有ArrayDeque、ArrayBlockingQueue、LinkedBlockingDeque
Map简介
Map是一个键值对集合 Map中存储键和值之间的映射 Map中Key无序,唯一 Map中value不要求有序,可重复 由于Map没有继承Collection接口,从Map集合中检索元素时,只能根据键对象,然后返回值对象 Map接口常用实现类有HashMap、LinkedHashMap、ConcurrentHashMap、TreeMap、HashTable
List,Set,Map的区别
区别1: 存储是否有序 List有序 Set无序 Map无序 区别2: 是否可重复 List可重复 Set不可重复 Map中Key不可重复,Value可重复 区别3: 实现子类不同 区别4: 元素查找方式不同 List,Set可检索 Map不可检索,只能遍历查找
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。