理解集合的好处
在c语言中,保存多个数据使用的是数组
数组的不足
- 长度固定,不能更改
- 保存的是同一个数据类型
- 数组进行增加、删除比较麻烦
问题:如果数组需要扩容的话,需要将小容量的数组先复制到大容量的数组中,然后再加入新的对象。【灵活性不够】
集合的优点
- 可以动态保存热议多个对象
- 提供了一系列方便的基本操作,add remove set get
- 使用集合添加、删除新对象,代码更加简洁
集合的框架体系
必须背下来
- 集合主要是两组(单列集合(单个对象),双列集合(键值对))
- Collection 接口有两个重要的接口:List 和Set,他们的实现子类都是单列集合
- Map接口的实现子类,是双列集合,存放的是键值对
消除警告Warnings,只需要在程序的最上面(main函数上),添加一行代码:
@SuppressWarning({"all"})
练习ArrayList 和 HashMap:
public static void main(String[] args) {
ArrayList arrayList = new ArrayList();
arrayList.add("jack");
arrayList.add("tom");
HashMap hashMap = new HashMap();
hashMap.put("No1","北京");
hashMap.put("No2","上海");
System.out.println(arrayList);
System.out.println(hashMap);
}
输出:
Collection接口和常用方法
- Collection 实现子类可以存放多个元素,每个元素可以是Object
注意:Collection接口是不能实现的,下面用ArrayList实现子类来演示Collection的常用方法。