Collection集合学习
import java.util.ArrayList;
import java.util.Collection;
/*
学习集合的目标:
1.会用集合存储数据
2.会遍历集合将数据取出来
3.掌握每种集合的特性
框架的学习方式:
1.学习顶层:学习顶层接口/抽象类中共性的方法,所有的子类都可以使用。
2.使用底层:底层不是接口就是抽象类,无法创建对象使用,需要使用底层的子类创建对象使用。
* Collection 接口
* List集合:特点:1。有序的集合(存储和取出元素顺序相同)2.允许存储重复的元素3.有索引,可以使用普通的for循环遍历
* ArrayList
* LinkedList
* Vector
* Set集合:1.不允许存储重复的元素2.没有索引(不能用for循环遍历)
* HashSet 无序的集合(存储和取出元素的顺序有可能不一致)
* LinkedHashSet 有序的集合(存储和取出元素的顺序一致)
* TreeSet 无序的集合(存储和取出元素的顺序有可能不一致)
java.util.Collection接口
所有单列集合的最顶层。里面定义了所有单列集合共性的方法
任意的单列集合都可以使用collection接口中的方法
共性的方法:
-public boolean add(E e): 把给定的对象添加到当前集合中
-public void clear(): 清空集合中所有的元素
-public boolean remove(E e): 把给定的对象在当前集合中删除
-public boolean contains(E e):判断当前集合中是否包含给定的对象
-public boolean isEmpty():判断当前集合是否为空
-public boolean size():返回集合中元素的个数
-public Object[] toArray():把集合中的元素,存储到数组中。
* */
public class Demo04List {
public static void main(String[] args) {
// 使用多态,创建集合对象,Collection接口指向对应的实现类
Collection<String> coll= new ArrayList<>();
System.out.println(coll);//[] 说明重写tostring方法
coll.add("张三");
coll.add("李四");
coll.add("王五");
coll.add("李四");
System.out.println(coll);
coll.remove("李四");//如果有相同的元素,remove只会删除索引靠前的元素
System.out.println(coll);
boolean empty = coll.isEmpty();//判断这个列表是不是空的
System.out.println(empty);// false
int count = coll.size();
System.out.println(count);
boolean isIn = coll.contains("立四");
if (isIn == false){
System.out.println("不包含");
//public Object[] toArray():把集合中的元素,存储到数组中。
Object[] arr = coll.toArray();
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
}