一、Collection集合
1、集合和数组的区别
数组:int[] arr = new int[3];
1、数组是引用类型。
2、数组长度是固定
3、数组可以按照索引进行查找。
4、数组可以定义为保存任意类型的数组。int[] arr = new int[3]; String[] strs = new String[3]; Student[] stus = new Student[3];
集合: ArrayList arr = new ArrayList();
1、集合是引用类型。
2、集合长度可变。
3、集合可以按照索引进行查找。
4、集合可以添加任何类型的数据(必须是引用类型)。使用泛型约束。
ArrayList<int> arr = new ArrayList<>(); //报错
ArrayList<Integer> arr = new ArrayList<>(); //可以
ArrayList<String> arr = new ArrayList<>(); //可以
ArrayList<Student> arr = new ArrayList<>(); //可以
简单的说:
1、集合是动态数组。(长度可变、也可以按照索引查询)
2、集合可以添加任何类型数据,但使用泛型约束。
import java.util.ArrayList;
public class TestArrayList {
public static void main(String[] args) {
//泛型起到了约束添加数据类型的作用。
ArrayList<String> list = new ArrayList();
list.add("aaa");
list.add("bbb");
//list.add(10); // new Integer(10);
for (int i = 0; i < list.size(); i++) {
String s = (String) list.get(i); //取值就不会出现返回类型不一样的问题
System.out.println(s);
}
}
}
2、集合概述
Collection 是集合层次结构中的根接口。Collection 可以保存一组对象,这些对象也称为元素。
一些 collection 允许有重复的元素,而另一些则不允许。(子接口或实现类)
一些 collection 是有序的,而另一些则是无序的。(子接口或实现类)
3、Collection集合常用方法
方法 | 说明 |
---|---|
boolean add(E e) | 添加元素到集合中 |
int size() | 获取集合的长度 |
boolean remove(Object e) | 删除集合中的某个元素 |
boolean contains(Object obj) | 判断集合是否包含某个元素 |
Object[] toArray() 了解 | 把集合转成Object[]类型 |
public void clear() 了解 | 清空集合中所有的元素。 |
public boolean isEmpty() | 判断当前集合是否为空。 |
示例代码:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
/*
Collection集合的常用方法
boolean add(E e)添加元素到集合中
int size()获取集合的长度
boolean remove(Object e) 删除集合中的某个元素
boolean contains(Object obj)判断集合是否包含某个元素
Object[] toArray() 把集合转成Object[]类型
public void clear() 清空集合中所有的元素。
public boolean isEmpty() 判断当前集合是否为空。
*/
public class TestCollection {
public static void main(String[] args) {
//创建一个集合对象
Collection<String> coll = new ArrayList<>();
//添加元素到集合中
// coll.add("宋吉吉");
// coll.add("王蓉");
// coll.add("马宝强");
//删除集合中的某个元素
// boolean bb = coll.remove("宋吉吉");
// System.out.println(bb);
//判断集合是否包含某个元素
/*boolean b = coll.contains("宋吉吉");
if(b){ //b==true
System.out.println("这样不好");
}else{
System.out.println("没有什么事");
}*/
//把集合转成Object[]类型
// Object[] objs = coll.toArray();
// System.out.println(Arrays.toString(objs));
//清空集合中所有的元素。
// coll.clear();
//判断当前集合是否为空。
boolean b = coll.isEmpty(); //没有元素 true。有元素 false
System.out.println(b);
//获取集合的长度
System.out.println(coll.size());
}
}