List:
实现Collection接口,本身也是接口。
允许有重复元素。任何数量的重复元素都可以在不影响现有重复元素的值及其索引的情况下插入到 List。
允许任意数量的空值。
List 及其所有实现类保持了每个元素的插入顺序。
List:ArrayList、LinkedList 等等。
Set:
实现Collection接口,本身也是接口。
不允许重复。Set 以及所有实现了 Set 接口的类都不允许重复值的插入。
最多允许一个空值的出现。
元素都是无序的;但某些 Set 的实现类以某种顺序对其中的元素进行排序,比如 LinkedHashSet 按照元素的插入顺序进行排序。
HashSet、LinkedHashSet、TreeSet、SortedSet 等等。
Map:
源码里面的Map并不是实现Collection的接口
public interface Map<K, V> {
// Query Operations
······
}
以键值对的形式对元素进行存储。Map 不允许重复键但允许重复值。
只允许出现一个空键但允许任意数量的空值。
Map 跟 Set 一样对元素进行无序存储,但其某些实现类对元素进行了排序。比如,TreeMap 依据键对其中的元素进行升序排序而 LinkedHashMap 则按照每个元素的插入次序进行排序。
HashMap、TreeMap、WeakHashMap、LinkedHashMap、IdentityHashMap 等等。
List,Set,Map的区别
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 一、前言 Java集合主要分为三种类型:Set(集)、List(列表)和Map(映射)。 先简单说下集合和数组的区...
- 本篇文章带你从Java源码深入解析关于Java容器的概念。 参考文献: Java容器相关知识全面总结 Java官方...
- 就学习经验,浅谈Java中的Set,List,Map的区别,对JAVA的集合的理解是想对于数组: 数组是大小固定的...