set和map的区别

简介: set和map的区别

Set类型没有键值对,且不能出现重复的元素;Map类是以键值对形式展示,键不能重复,但是值可以重复。\n\n1.Set接口\n\n1.不允许重复对象\n\n2. 无序容器,你无法保证每个元素的存储顺序,TreeSet通过 Comparator  或者 Comparable 维护了一个排序顺序。\n\n3. 只允许一个 null 元素\n\n4.Set 接口最流行的几个实现类是 HashSet、LinkedHashSet 以及 TreeSet。最流行的是基于 HashMap 实现的 HashSet;TreeSet 还实现了 SortedSet 接口,因此 TreeSet 是一个根据其 compare() 和 compareTo() 的定义进行排序的有序容器。\n\n2.Map接口\n\n1.Map不是collection的子接口或者实现类。Map是一个接口。\n\n2.Map 的 每个 Entry 都持有两个对象,也就是一个键一个值,Map 可能会持有相同的值对象但键对象必须是唯一的。\n\n3. TreeMap 也通过 Comparator  或者 Comparable 维护了一个排序顺序。\n\n4. Map 里你可以拥有随意个 null 值但最多只能有一个 null 键。\n\n5.Map 接口最流行的几个实现类是 HashMap、LinkedHashMap、Hashtable 和 TreeMap。(HashMap、TreeMap最常用)


相关文章
|
1天前
|
JavaScript 前端开发 Java
ES6 逐点突破系列 -- Set Map,工作感悟,完美收官
ES6 逐点突破系列 -- Set Map,工作感悟,完美收官
|
1天前
|
存储 缓存 JavaScript
JavaScript中的Set和Map:理解与使用
JavaScript中的Set和Map:理解与使用
|
2天前
|
存储 JavaScript
ES6+新特性-Symbol与Set/Map数据结构
ES6 引入了三种新的数据结构:Symbol、Set和Map。Symbol是唯一且不可变的值,常用于定义对象的独特属性;Set存储不重复值,适合数组去重;Map则是键值对集合,键可为任意类型,提供了更灵活的存储方式。这些新数据结构提供了更高效的操作手段,分别解决了属性命名冲突、数据去重和复杂键值对存储的问题。示例展示了如何使用Symbol、Set和Map进行基本操作。
|
2天前
|
存储 编译器 C++
C++:map&set 对红黑树的封装
C++:map&set 对红黑树的封装
10 1
|
2天前
|
存储
Map与Set的经典OJ题
Map与Set的经典OJ题
12 3
|
2天前
|
存储 自然语言处理 容器
Map与Set
Map与Set
12 3
|
2天前
|
存储 C++ 容器
C++:STL - set & map
C++:STL - set & map
15 4
|
2天前
|
存储 C++ 容器
[数据结构]-map和set
[数据结构]-map和set
|
2天前
|
存储 前端开发 索引
【Web 前端】ES6中,Set和Map的区别 ?
【5月更文挑战第1天】【Web 前端】ES6中,Set和Map的区别 ?
|
2天前
|
Java 开发者
Java中三种Set的实现类的用法和区别
Java中三种Set的实现类的用法和区别