Set/HashSet在Java中的内部运行机制


Set数据结构用于仅存储唯一值,这意味着set中不会存储重复值。在创建HashSet时,它会在内部实现一个HashMap。可以使用“add”函数将元素插入到HashSet中。这在内部调用“put”函数,因为会已在内部创建一个HashMap。因此,Set使用HashMap来获取唯一值。

HashMap包含唯一的键和值对,其中键和值对使用“put”函数插入。在调用“put”函数时,会根据是否存在键的映射,返回与键关联的先前值或null。

LinkedHashSet扩展到HashSet类,这意味着LinkedHashSet使用“super”函数调用HashSet类的构造函数。

示例

 实时演示

import java.util.HashSet;
public class Demo{
   public static void main(String args[]){
      HashSet my_hashset = new HashSet();
      boolean my_b1 = my_hashset.add("only");
      boolean my_b2 = my_hashset.add("sample");
      boolean my_b3 = my_hashset.add("sample");
      System.out.println("The value of first boolean is " + my_b1);
      System.out.println("The value of second boolean is = "+my_b2);
      System.out.println("The value of third boolean is = "+my_b3);
      System.out.println(my_hashset);
   }
}

输出

The value of first boolean is true
The value of second boolean is = true
The value of third boolean is = false
[only, sample]

一个名为 Demo 的类包含定义 HashSet 实例的主函数。使用“add”函数将元素添加到哈希集中。这些元素随后显示在屏幕上。

更新于: 2020 年 7 月 4 日

6 千次以上浏览

开启您的 职业生涯

完成该课程获取认证

立即开始
广告