Set集合
Set集合是Collection集合的子体系,元素特点是无序,唯一.
Set是一个接口类,不能通过new的方式创建对象.
Set中没有带索引的方法,不能通过for循环遍历.
Set集合的常用子类有两个,分别是HashSet集合和TreeSet集合.
set集合也是有索引的,只是不对外暴露,作为程序员我们无法使用Set集合的索引
Set入门
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class demo01 {
public static void main(String[] args) {
HashSet<String> hs = new HashSet<>();
hs.add("hello");
hs.add("world");
hs.add("java");
hs.add("world");
//通过两种方式来遍历Set集合
//1.普通迭代器
Iterator<String> it = hs.iterator();
while (it.hasNext()) {
String s = it.next();
System.out.println(s);
}
//2.增强for
for (String s : hs) {
System.out.println(s);
}
}
}
HashSet集合
特点
- 底层数据结构是哈希表.
- 对集合的迭代顺序不做任何保证,也就是说不保证元素的存取顺序一致.
- 没有带索引的方法,所以不能通过普通for进行遍历
- 由于是Set集合,所以是不包含重复元素的集合
测试代码
public static void main(String[] args) {
HashSet<String> hs = new HashSet<>();
hs.add("hello");
hs.add("world");
hs.add("java");
hs.add("world");
//遍历HashSet集合
//1.增强for
for (String h : hs) {
System.out.println(h);
}
System.out.println("------------------");
//2.普通迭代器
Iterator<String> it = hs.iterator();
while (it.hasNext()) {
String s = it.next();
System.out.println(s);
}
}
浙公网安备 33010602011771号