1、集合的特点

集合和数组的特点对比
集合类和特点:提供一种存储空间可变的存储模型,存储的数据容量可以发生改变。
集合和数组的区别
相同点:都是储存数据的容器
不同点:数组的容量时固定的,集合的容量时可变的
如果存储的数据,长度经常发生改变,推荐使用集合
Student[] arr = new Student[3];可以创建对象数组,但是对象数组长度不可变。

2、ArrayList集合的构造方法和添加方法

ArrayList的构造方法

public ArrayList()构造一个初始容量为10的空列表
注意:集合容器如果没有加入<> 就可以存储任意数据类型
<>泛型:对集合容器存储的数据类型进行限制
ArrayList<E>
可调整大小数组实现
<E>是一种特殊的数据类型,泛型
怎么用呢?
在出现E的地方使用引用数据类型进行替换即可
举例:ArrayList<String>,ArrayList<Student>

成员方法

添加:
public boolean add(E e)将指定的元素添加到此列表的尾部。
public void add(int index, E element)将指定的元素插入此列表中的指定位置。

  1. import java.util.ArrayList;
  2. public class Demo1ArrayList {
  3. public static void main(String[] args) {
  4. ArrayList<String> stuArr = new ArrayList<>();
  5. stuArr.add("111");
  6. stuArr.add("222");
  7. stuArr.add("333");
  8. stuArr.add(0,"555");
  9. System.out.println(stuArr);
  10. }
  11. }

3、ArrayList集合常用方法

public boolean remove(Object o):删除指定的元素,返回删除是否成功
注意:根据元素删除集合元素,只能删除一堆一样元素中的第一个元素
public E remove(int index):删除指定索引处的元素,返回被删除的元素
public E set(int index, E element):修改指定索引处的元素,返回被修改的元素
public E get(int index):返回指定索引处的元素
public int size()返回集合中的元素的个数

4、ArrayList集合遍历

  1. import java.util.ArrayList;
  2. public class Demo3ArrayList {
  3. public static void main(String[] args) {
  4. ArrayList<String> list = new ArrayList<>();
  5. list.add("1");
  6. list.add("2");
  7. list.add("3");
  8. for (int i = 0; i < list.size(); i++) {
  9. System.out.println(list.get(i));
  10. }
  11. }
  12. }

5、删除集合元素

  1. import java.util.ArrayList;
  2. public class Demo5ArrayList {
  3. public static void main(String[] args) {
  4. ArrayList<String> sArr = new ArrayList<>();
  5. sArr.add("Test");
  6. sArr.add("张三");
  7. sArr.add("李四");
  8. sArr.add("王五");
  9. sArr.add("Test");
  10. sArr.add("Test");
  11. sArr.add("Test");
  12. for (int i = 0; i < sArr.size(); i++) {
  13. String s = sArr.get(i);
  14. if ("Test".equals(s)){
  15. sArr.remove(i);
  16. i--;
  17. }
  18. }
  19. System.out.println(sArr);
  20. }
  21. }

在进行字符串比较的时候:遇到常量和变量比较,使用常量.equals(变量)可以预防空指针异常。
当remove集合不是最后一个元素的时候,所有集合元素会向填充,所以要想遍历所有元素,需要将i减一。