package cn.itcast.day12.demo02;
/**
* @author admin
* @version 1.0.0
* @ClassName Demo03.java
* @Description TODO
* @createTime 2021年09月24日 17:53:00
*/
import java.util.HashSet;
import java.util.Iterator;
/**
* java.util.Set接口 extends Collection接口
* Set接口的特点:
* 1.不允许存储重复的元素
* 2.没有索引 没有带索引的方法 也不能使用普通的for循环遍历
* java.util.HashSet implements Set接口
*HashSet特点:
* 1.Set接口有的两个特点他都有
* 2.是一个无需的集合,存储和取出元素的顺序有可能不一样
* 3.底层是一个哈希表结构(查询的速度非常快)
*/
public class Demo03 {
public static void main(String[] args) {
HashSet<Integer> set = new HashSet<>();
//使用add往集合中添加元素
set.add(11);
set.add(22);
set.add(33);
set.add(22);
System.out.println("set = " + set);
//因为没有索引 不能使用普通for循环 所以选择使用迭代器Iterrator进行遍历
Iterator<Integer> iterator = set.iterator();//获取迭代器
while (iterator.hasNext()){//判断是否有元素
Integer next = iterator.next();//取出元素
System.out.println("next = " + next);//next = 33 next = 22 next = 11
}
System.out.println("===================");
//也可以使用增强for循环遍历
for (Integer s: set) {
System.out.print("s = " + s+" ");//s = 33 s = 22 s = 11
}
}
}