集合,长度可变的容器
- ArrayList集合:底层原理也是,数组;初始大小长度为10
1初始化一个长度为10的数组,数值依次存储,当数组存不下的时候; 2创建一个原数组1.5倍的新数组,将原数组内容拷贝到新数组,再将没存到的数据,存到 新数组中; 注意:【长度不变用数组,长度经常改变用集合】
- ArrayList构造方1
- public ArrayList();
- 泛型:<>
- 在类名之后加<>,可以使集合存储的数据类型,进行类型限制;
- 尖括号中只能使用引用数据类型,不能是基本数据类型
解决方案:【基本类型都有对应包装类】
基本数据类型 | 对应包装类 |
---|---|
int | Integer |
short | Short |
byte | Byte |
double | Double |
float | Float |
char | Character |
- 增
- public boolean add(E e);向集合尾部添加数据,返回添加成功的状态
- public void add(int index,E element);插队添加
- 删
- public E remove(int index);根据索引删除集合中的元素
- public boolean remove(元素);根据元素删除集合中的内容,重复元素只删除第一个;返回添加成功的状态
- 改
- public E set(int index,E element);修改指定索引位置,返回被覆盖的元素
- 查
- public E get(int index);根据索引,获取集合中的元素
4.1 案例1
创建一个存储字符串集合,存储5个字符串元素,找出4个字的人名,并打印
- public static void main(String[] args) {
- ArrayList
list1 = new ArrayList<>();//创建list集合 - list1.add("张三"); //添加元素
- list1.add("王五");
- list1.add("上官铁蛋");
- list1.add("张三");
- list1.add("诸葛订单");
- for (int i = 0; i < list1.size(); i++) { //遍历集合
- String name = list1.get(i); //获取集合元素
- if (list1.get(i).length()==4){ //判断字符串长度是否为4
- System.out.println(name); //打印4个字的名字
- }
- }
- }