Java基础知识讲解-HashSet类

111 阅读1分钟

1、介绍

HashSet 基于 HashMap 来实现的,是一个不允许有重复元素的集合。

HashSet 允许有 null 值。

HashSet 是无序的,即不会记录插入的顺序。

HashSet 不是线程安全的, 如果多个线程尝试同时修改 HashSet,则最终结果是不确定的。 您必须在多线程访问时显式同步对 HashSet 的并发访问。

HashSet 实现了 Set 接口。

2、使用

导入包:

import java.util.HashSet;

初始化:

HashSet<E> hashset=new HashSet<E>();

3、功能函数

(1)添加元素
import java.util.HashSet;
public class Main
{
	public static void main(String[] args) {
		HashSet<Character> set=new HashSet<Character>();
		set.add('z');
		set.add('p');
		set.add('s');
		System.out.println(set);
		
	}
}
(2)删除元素
import java.util.HashSet;
public class Main
{
	public static void main(String[] args) {
		HashSet<Character> set=new HashSet<Character>();
		set.add('z');
		set.add('p');
		set.add('s');
		set.add('p');//重复元素不会再添加
		System.out.println(set);
		set.remove('s');//删除某一元素
		System.out.println(set);
		set.clear();//清空
		System.out.println(set.size());
		
	}
}
[p, s, z]
[p, z]
0
(3)判断元素是否存在
import java.util.HashSet;
public class Main
{
	public static void main(String[] args) {
		HashSet<Character> set=new HashSet<Character>();
		set.add('z');
		set.add('p');
		set.add('s');
		set.add('p');//重复元素不会再添加
		System.out.println(set);
		System.out.println(set.contains('p'));
		
	}
}

4、遍历元素

import java.util.HashSet;
public class Main
{
	public static void main(String[] args) {
		HashSet<Character> set=new HashSet<Character>();
		set.add('z');
		set.add('p');
		set.add('s');
		set.add('p');//重复元素不会再添加
		System.out.println(set);
		for(char c:set)
		{
		    System.out.print(c+" ");
		}
		
	}
}
[p, s, z]
p s z