Java——集合之Collection
一、Collection集合概述
- Collection是单例集合的顶层接口,表示一组对象,这些对象称为Collection的元素
- JDK不提供此接口的任何直接实现,它提供更具体的子接口(如Set、List)实现
二、创建Collection集合的对象
- 多态的方式
- 具体的实现类ArrayList
import java.util.ArrayList;
import java.util.Collection;
public class Demo {
public static void main(String[] args) {
Collection<String> c = new ArrayList<String>();
c.add("hello");
c.add("world");
System.out.println(c);
}
}
三、Collection集合的常用方法
- boolean add(E e):添加元素
- boolean remove(Object o):从集合中移除指定的元素
- void clear():清空集合中的元素
- boolean contains(Object o):判断集合中是否存在指定的元素
- boolean isEmpty():判断集合是否为空
- int size():集合的长度,也就是集合中元素的个数
import java.util.ArrayList;
import java.util.Collection;
public class Demo1 {
public static void main(String[] args) {
Collection<String> c = new ArrayList<String>();
//添加元素
c.add("hello");
c.add("world");
c.add("java");
c.add("hi");
System.out.println(c);
//移除元素
c.remove("hi");
System.out.println(c);
//判断是否为空
System.out.println(c.isEmpty());
//判断是否包含指定元素
System.out.println(c.contains("java"));
//集合的长度
System.out.println(c.size());
//清空集合中的元素
c.clear();
System.out.println(c);
}
}
四、Collection集合的遍历
Collection集合的遍历使用迭代器Iterator,这是集合的专用遍历方式
- Iterator iterator():返回集合中元素的迭代器,通过集合的iterator()方法得到
- 迭代器是通过集合的iterator()方法得到,所以说它依赖于集合而存在
Iterator中的常用方法
- E next():返回迭代器的下一个元素
- boolean hasNext():如果迭代器中具有更多的元素,则返回true
Collection集合存储String并遍历的示例
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class Demo2 {
public static void main(String[] args) {
Collection<String> c = new ArrayList<String>();
c.add("hello");
c.add("world");
c.add("java");
Iterator<String> iter = c.iterator();
while (iter.hasNext()) {
System.out.println(iter.next());
}
}
}
Collection集合存储学生对象并遍历的示例
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class Demo {
public static void main(String[] args) {
Collection<Student> c = new ArrayList<Student>();
Student s1 = new Student("zlx", 18);
Student s2 = new Student("zkx", 25);
Student s3 = new Student("lxs", 20);
c.add(s1);
c.add(s2);
c.add(s3);
Iterator<Student> iter = c.iterator();
while (iter.hasNext()) {
Student s = iter.next();
System.out.println(s.getName() + "," + s.getAge());
}
}
}