一 Collection是所有单列集合的父接口
- 1大概了解一下关系
1.Collection基础方法的使用:
- 1 五个方法 直接看代码
* 集合框架:
* Collection接口:单列集合 用来存储一个一个的对象
* list接口: 存储有序的 可重复的数据 --> 动态数组
* ArrayList,LinkedList,Vector
* set接口: 存储无序的,不可重复的数据 ---->高中讲的“集合”
*
*
* Map:双列集合 用来存储一对一对(key - value)的数据---> y = f(x) 一个value可以对应不同的key 反之不行
* HashMap
*
*
* Collection接口中的方法的使用
*
* @author shkstart
* @create 2022/11/23-10:28
*/
public class CollectionTest {
@Test
public void test1(){
Collection collection = new ArrayList();
//add(Object e): 将元素e添加到集合coll中
collection.add("AA");
collection.add("BB");
collection.add(new Date());
collection.add("123");//自动装箱
//size():获取添加的元素的个数
System.out.println(collection.size());
//addAll():将coll1集合中的元素添加到当前集合中
Collection collection1 = new ArrayList();
collection1.add("abcd");
collection1.add(123412);
collection.addAll(collection1);
System.out.println(collection.size());
System.out.println(collection);
//clear():清空集合元素 没删掉集合 只是把元素清空了
collection.clear();
System.out.println(collection);
//isEmpty():判断集合是不是空
System.out.println(collection.isEmpty());
}
}
- 运行截图:
2.Collection接口中声明的方法的测试
测试一:
public class CollectionTest1 {
@Test
public void test1(){
Collection collection = new ArrayList();
collection.add("Peter");
collection.add(new String("Peter"));
collection.add(123);
collection.add("Good");
collection.add(new Person("邓浩",20));
// Person person = new Person("邓浩", 20);
// collection.add(person);
//contains(Object obj) 判断当前集合中是否包含obj 不是看地址值 是看内容是否一样
//我们在判断时会调用obj对象所在类的equals方法
// System.out.println(collection.contains(person));
System.out.println(collection.contains(new Person("邓浩", 20)));
System.out.println(collection.contains(new String("Peter")));//没重写equals方法 用的Object里面的方法 默认是==
//containsAll(Collection coll1) :判断形参coll1中的所有元素是否都存在当前集合中
Collection collection1 = Arrays.asList(123,"Peter");
System.out.println(collection.containsAll(collection1));
}
结果:
测试二:
@Test
public void test2(){
// remove(Object obj) retainAll 把另一个集合中的所有元素都移除
Collection collection = new ArrayList();
collection.add("Peter");
collection.add(new String("Peter"));
collection.add(123);
collection.add("Good");
collection.add(new Person("邓浩",20));
// collection.remove("Peter");
// collection.remove("Peter");
Collection collection1 = Arrays.asList(123,"Peter",456);
collection.removeAll(collection1);
System.out.println(collection);
System.out.println(collection1);
//retainAll 求交集的意思 修改当前的集合 里面只有两个共同有的数据
//equals 判断当前集合和形参元素和当前集合元素是否都相同 顺序不能变
//hashCode(): 返回当前对象的哈希值
//toArray(): 集合转换成数组 Object[] arr = coll.toArray():
//List<String> list = Arrays.asList(new String[]{"AA","BB"}): 基本数据类型的数组的话会被识别为一个元素
}
结果二: