一、数组
数组是java中的一种容器,具有长度固定、同类型元素、索引对应且从0开始三大特点
二、集合
现实中程序运行时数据量是可变的,使用数组进行存储不方便,以及存储不可重复数据和对元素进行排序等三大现实需求,因此java中就提供了很多不同特征的容器类来解决这类问题
我们对数据保存的逻辑多种多样,于是就有了各种各样的数据结构,java中对于数据结构的实现就是集合
三、java中的集合
java中的集合由很多很多接口和实现类构成
四、ArrayList
是List接口的实现类
具有可存储可重复元素、底层是数组存储、元素类型为任意类类型三个特点
1、创建对象
方式一:不指定元素类型
在对指定类型元素进行处理时必须添加类型判断,非常麻烦
方式二:使用泛型指定元素类型(泛型:将类类型作为元素类型)
这样创建集合一个集合内的元素都是同一种类型,方便操作
底层存储:
底层是一个Objet类型的数组实现元素存储
初始大小:
10(备注:小菜鸡不懂了,下面的常量为什么我点不出来呢)
底层数组扩容尺度:
扩大为原来数组大小的1.5倍
2、添加元素
错误试例:
3、删除元素
4、改查元素
5、待学方法
iterator
sort
foreach
6、组合技
7、面试一问:数组、字符串、集合三者长度如何获取
length属性、length()方法、size()方法