HashSet
java.util包下的类
构造方法
HashSet() 构造一个新的空 set,其底层 HashMap 实例的默认初始容量是 16,加载因子是 0.75。 HashSet(Collection<? extends E> c) 构造一个包含指定 collection 中的元素的新 set。 HashSet(int initialCapacity) 构造一个新的空 set,其底层 HashMap 实例具有指定的初始容量和默认的加载因子(0.75) HashSet(int initialCapacity, float loadFactor) 构造一个新的空 set,其底层 HashMap 实例具有指定的初始容量和指定的加载因子。
无序无重复:是指集合存放的顺序和取得元素的顺序不一致
但集合内部有自己的算法排布顺序,hash算法
HashSet的无重复原则是equals方法和HashCode方法同时进行比较
如果发现重复元素了,就拒绝存入了
迭代器
public static void main(String
[] args
) {
Collection c
= new ArrayList();
c
.add("java");
c
.add("c++");
c
.add("小孩");
c
.add("张三");
Iterator i
= c
.iterator();
while(i
.hasNext()){
String str
= (String
) i
.next();
System
.out
.println(str
);
i
.remove();
}
}
泛型和增强for循环
TreeSet
java.util包下的类
无序无重复
TreeSet本身有顺序,是按照字典索引顺序排布的 TreeSet要求存入的类实现Comparable接口,重写方法