什么是集合?
数组就是一个集合。集合实际上就是一个容器,可以用来容纳其他类型的数据
集合中存储的是什么?
集合中不能直接存储基本数据类型,另外飞机和也不能直接存储java对象,集合当中存储的都是java对象的内存地址。(或者说集合中存储的是引用)
list.add(1000); //自动装箱Integer
注意:
集合在java中本身是一个容器,是一个对象
集合中任何时候存储的都是“引用”
为什么要用集合?
当我们存一个值得时候,需要定义一个变量用来存储。如果要存成百上千个值得话,就需要定义成百上千个变量,这样很麻烦,想着能不能用一个变量就能同时把这成百上千个值存储起来呢?于是出现了数组
数组存储相同类型的值并且固定大小、顺序存储。如果创建时设置的数组长度过大,易造成内存空间浪费,如果数组长度过小,易造成溢出,而且无法在两个元素之间添加元素。想能不能有一种方式可以动态扩大数组的长度呢?而且数组无法保存具有映射关系的数据(唐三-男,小舞-女,戴沐白-男)。为了保存数量不确定的的数据,还有具有映射关系的数据,于是出现了集合
使用不同的集合可以动态的添加删除数据
集合有哪些特点?
不同集合底层对应不同数据结构。
集合在java JDK中哪个包下?
java.util.*;
集合分为了哪几类?
- 单个方式存储元素:
java.util.Collection;
- 以键值对方式存储元素:
java.u til.Map;
在实际生产中如何选择集合?
Set:数据对象没有顺序且不可以重复(两个对象之间互相equals)
List:数据对象有顺序且可以重复
Map:键值对
注:集合中不能中直接存储基本数据类型,也不能存Java对象,只是存储Java对象的内存地址
包含了哪些类型的集合?
思维导图
Java集合系列:
Java—Collection、Iterable、Iterator的区别