当前位置: 首页 > 编程笔记 >

我们如何在Java中实现自定义HashSet?

严高峻
2023-03-14
本文向大家介绍我们如何在Java中实现自定义HashSet?,包括了我们如何在Java中实现自定义HashSet?的使用技巧和注意事项,需要的朋友参考一下

HashSet实现了不允许重复值的Set接口。HashSet不是同步的,也不是线程安全的。当我们可以向HashSet添加任何重复元素时,add()方法返回false,并且不允许向HashSet添加重复元素。

语法

public class HashSetextends AbstractSetimplements Set, Cloneable, Serializable

在下面的示例中,我们可以实现自定义HashSet

示例

import java.util.*;
public class CustomHashSetTest extends AbstractSet {
   private HashMapmap = null;
   private static final Object tempObject = new Object();
   public CustomHashSetTest() {
      map = new HashMap<>();
   }
   public boolean add(Object object) {
      return map.put(object, tempObject)==null;
   }
   public static void main(String[] args) {
      CustomHashSetTest test = new CustomHashSetTest();
      test.add("India");
      test.add("Australia");
      test.add("England");
      test.add("Australia");
      for(Object object : test) {
         System.out.println(object.toString());
      }
   }
   @Override
   public Iterator iterator() {
      return map.keySet().iterator();
   }
   @Override
   public int size() {
      return map.size();
   }
}

输出结果

England
Australia
India
 类似资料:
  • 本文向大家介绍Java如何实现自定义异常类,包括了Java如何实现自定义异常类的使用技巧和注意事项,需要的朋友参考一下 这篇文章主要介绍了Java如何实现自定义异常类,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 自定义异常类步骤   创建一个类继承异常父类Exception   在具体的实现方法首部抛出异常类(自己创建的那个类),throws的

  • 本文向大家介绍如何在jQuery中实现自定义事件?,包括了如何在jQuery中实现自定义事件?的使用技巧和注意事项,需要的朋友参考一下 自定义事件意味着您可以在jQuery中创建自己的事件。例如,创建一个自定义事件以在按下键盘上的任意键时触发警报框。 示例 您可以尝试运行以下代码以了解如何创建自定义事件,

  • 问题内容: 我收到此错误: sum()得到了意外的关键字参数’out’ 当我运行此代码时: 除了对批处理进行循环并编辑源代码之外,是否可以实现自定义指标? 问题答案: 问题是,并没有与NumPy阵列但无论哪种Theano或TensorFlow张量。这就是为什么您会收到此错误。 您可以定义自定义指标,但必须记住,其参数是那些张量,而不是NumPy数组。

  • 我有一个名为 Expect 的类,在你实例化它之后,你可以构建一个数据结构(为了简单起见,假设它是一棵树)。然后调用 run 方法,该方法遍历树,在每个节点上执行一些操作。这些操作需要一些时间才能完成,以便将来返回最终结果。在伪代码中,它类似于: 我想用它们通常的签名实现map和flatmap,但是它们作为参数接收的函数必须对将来返回的值进行操作。我看不出有任何方法可以实现这一点。

  • 我需要实现我的自定义DefaultComboxModel。这样做的原因是每次我打电话给 或者 或者 我看到它自动触发一个项目状态更改事件。这会导致一些随机项目自动从列表中选择。这不是我想要的,因为它用随机选择的项目填充可编辑的JTextField。 这是我在使用我的自定义Itemlistener中的Thread.dumpStack()进行调试时看到的stacktrace,它是我在调用上述方法时看到

  • 我正在使用Spring开发一个应用程序。在Access Control Access一节中,我想使用Spring Security Acl(我是Acl的新手)。我想在我的应用程序中实现ACL基于两点: 应用程序应该具有以下五种权限:、、、和。 权限是分层的,当用户具有权限时,它应该能够,或者当用户具有权限时,它应该能够、和等。 更新: 我的应用程序是基于Spring MVC RESTful的。当用