Java集合有哪些?

内容摘要
java集合主要有3种:set(集)、list(列表)和map(映射)。一、List集合:(有序,元素可以重复)List里存放的对象是有序的,同时也是可以重复的,List关注的是索引,拥有一系列和索引相关的方法,
文章正文

java集合主要有3种:set(集)、list(列表)和map(映射)。

一、List集合:(有序,元素可以重复)

List里存放的对象是有序的,同时也是可以重复的,List关注的是索引,拥有一系列和索引相关的方法,查询速度快。因为往list集合里插入或删除数据时,会伴随着后面数据的移动,所有插入删除数据速度慢。

1、ArrayList集合:

1)、底层数据结构是数组,查找快,增删慢。

2)、线程不安全,效率高

2、Vector集合:

1) 底层数据结构是数组,查询快,增删慢

2)线程安全,效率低

3、LinkedList集合:

1) 底层数据结构是链表,查询慢,增删快

2)线程不安全,效率高

二、Set集合(元素不可重复,元素唯一)

Set里存放的对象是无序,不能重复的,集合中的对象不按特定的方式排序,只是简单地把对象加入集合中。

1、Hashset集合:

1) 底层数据结构是哈希表,哈希表依赖两个方法hascode ()和equals()方法

2)两个方法的执行顺序:

首先判断hascode()值是否相同

是:继续执行equals()方法,看其返回值

是true:说明元素重复,不添加

是false:就直接添加元素

否:就直接添加到集合

2、Treeset集合:

1)底层数据结构是二叉树

三、Map集合

Map集合中存储的是键值对,键不能重复,值可以重复。根据键得到值,对map集合遍历时先得到键的set集合,对set集合进行遍历,得到相应的值。

1、Map集合是Map集合家族的根接口,它有HashMap和TreeMap集合两个子类。

2、Map集合中只对键有效,而对值是无效的。

3、子类的数据结构:

Hashmap:底层数据结构是哈希表,Treemap底层数据结构是二叉树,其性质和Set的底层数据结构一样。

推荐教程:Java教程

代码注释
[!--zhushi--]

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!