一.概述
Set是一个无序、不允许出现重复元素的集合,其没有带索引的方法,所以不能用for循环遍历。
基于其不允许出现重复元素的特点,Set集合可用于去重。
Set集合主要有HashSet实现类。
二.HashSet类
HashSet 实现了 Set 接口。
HashSet 允许有 null 值。
HashSet 是一个不允许有重复元素的集合。
HashSet 是无序的,即不会记录插入的顺序。
常用方法:
1. add(Object ob)方法用于向Set集合中添加元素,添加成功返回true,否则返回false
2. size()方法:返回Set集合中的元素个数
3. remove(Object ob)方法:删除Set集合中的元素,删除成功返回true,否则返回false
4. contains()方法:如果Set包含元素,则返回true,否则返回false
5. clear()方法:移除此Set中的所有元素
三.例题
1.明明的随机数
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
//在此输入您的代码...
int n=scan.nextInt();
Set<Integer> set=new HashSet<Integer>();
List<Integer> list=new ArrayList<Integer>();
for(int i=0;i<n;i++)
{
int a=scan.nextInt();
if(!set.contains(a))
{
set.add(a);
list.add(a);
}
}
Collections.sort(list);
System.out.println(list.size());
for(int x:list)
{
System.out.print(x+" ");
}
scan.close();
}