Java HashSet学习笔记

1. HashSet简介

HashSet是Java集合框架中的一种集合,它继承自AbstractSet类,实现了Set接口。HashSet是一个无序的、元素不可重复的集合。

2. HashSet常用方法

(1)add(Object o)方法

将指定的元素添加到HashSet中。如果元素已经存在,则不进行任何操作。

示例代码:

Copy Code
Set<String> set = new HashSet<>(); set.add("apple"); set.add("banana"); set.add("cherry"); set.add("apple"); // apple已经存在,不会添加到集合中 System.out.println(set); // 输出结果:[cherry, banana, apple]

(2)remove(Object o)方法

从HashSet中移除指定的元素。

示例代码:

Copy Code
Set<String> set = new HashSet<>(); set.add("apple"); set.add("banana"); set.add("cherry"); set.remove("banana"); // 移除banana元素 System.out.println(set); // 输出结果:[cherry, apple]

(3)contains(Object o)方法

判断HashSet中是否包含指定的元素。

示例代码:

Copy Code
Set<String> set = new HashSet<>(); set.add("apple"); set.add("banana"); set.add("cherry"); System.out.println(set.contains("banana")); // 输出结果:true System.out.println(set.contains("orange")); // 输出结果:false

(4)size()方法

获取HashSet中元素的数量。

示例代码:

Copy Code
Set<String> set = new HashSet<>(); set.add("apple"); set.add("banana"); set.add("cherry"); System.out.println(set.size()); // 输出结果:3

3. HashSet实例

下面是一个使用HashSet的实例,用于统计某篇文章中不同单词的数量:

Copy Code
import java.util.HashSet; import java.util.Scanner; import java.util.Set; public class WordCount { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String text = sc.nextLine(); // 读取文章正文 Set<String> wordSet = new HashSet<>(); String[] words = text.split("\\s+"); // 按空格分隔单词 for (String word : words) { wordSet.add(word.toLowerCase()); // 将单词转换为小写并添加到集合中 } System.out.println("文章中不同单词的数量为:" + wordSet.size()); } }

这个程序先读取文章正文,然后将文章中的单词添加到HashSet中。由于HashSet的元素不可重复,因此最终得到的wordSet集合中包含的元素就是不同单词的数量。