Collection接口的基本方法
boolean add(Object o) |
向集合当中加入一个对象 |
void clear() |
删除集合当中的所有对象 |
boolean isEmpty() |
判断集合是否为空 |
remove(Object o) |
从集合中删除一个对象的引用 |
int size() |
返回集合中元素的数目 |
Set接口继承了Collection接口的上述方法,HashSet类实现了Set接口
import java.util.Set; import java.util.HashSet; class Test{ public static void main(String args[]){ Set<String> hs = new HashSet<String>(); System.out.println(hs.isEmpty());//判断是否为空 hs.add("a"); hs.add("b"); hs.add("c"); hs.add("d"); hs.add("c");//重复添加c System.out.println("hs对象长度为" + hs.size()); hs.remove("d");//移除d System.out.println("remove之后为" + hs.size()); hs.clear(); //清空 System.out.println("clear之后为" + hs.size()); } }
List中的对象可以使用下标来读取,但由于Set中的对象不按特定的顺序排序,所以不能使用下标的方式读取集合的数据,我们通过迭代器Iterator来遍历Set中的数据。
Set是Collection的子接口,而Collection又是Iterator的子接口。Itreator接口的常用方法有hasNext()、next(),迭代器的模型如下:
箭头代表游标,方框代表对象,当迭代器对象调用hasNext()方法时,返回值为布尔值,判断游标之后有没有下一个对象,有就返回true。当调用next()时,返回游标所指的下一个对象,同时游标向后移动一位
import java.util.Set; import java.util.HashSet; import java.util.Iterator; class Test{ public static void main(String args[]){ Set<String> hs = new HashSet<String>(); hs.add("b"); hs.add("d"); hs.add("a"); hs.add("c"); //调用Collection接口的iterator方法生成迭代器对象it Iterator<String> it = hs.iterator(); while(it.hasNext()){ System.out.println(it.next()); } } }