java集合List,Set,Map怎么理解存储数据有序,无序以及可重复,不可重复

学习java已经有一段时间了,在练习开发项目的过程中经常用到List和Map却不知道其到底有何区别,今天整理了一下知识点对这几个进行浅显易懂的区分。PS:本文中的“有序”指的是存储数据时输入顺序与数据输出顺序相等,“唯一”:指的是不重复

java集合List,Set,Map怎么理解存储数据有序,无序以及可重复,不可重复_第1张图片

首先我们知道java集合有两个接口;一个是Collection,一个是Map;

其中Colection衍生出了两个子接口也就是平时我们常见的--List【有序,不唯一】和--Set【无序,唯一】;代码解释:

java集合List,Set,Map怎么理解存储数据有序,无序以及可重复,不可重复_第2张图片

这两个接口分别有两个具体的实现类。

List对应的实现类为ArrayList和LinkedList。

Set对应的实现类是HashSet(底层由HashMap实现;数据结构为哈希表,默认不支持排序)和TreeSet(底层由TreeMap实现;数据结构为红黑树, 默认支持排序)。

而Map衍生出的两个实现类为HashMap和TreeMap。

Map【无序,主键key唯一,value值不唯一】;代码解释:

java集合List,Set,Map怎么理解存储数据有序,无序以及可重复,不可重复_第3张图片

 以上就是我对这三个集合接口学习的理解,深究底层还不太会,此片文章适合学习到java集合的小白帮助其理解。如有错误,望大佬指正,感谢,在此膜拜在java学习路上帮助新人的大佬,感谢!!!

你可能感兴趣的:(JAVA基础,java,面试,list)