>Java >java지도 시간 >Java에서 사용자 정의 HashSet을 어떻게 구현할 수 있나요?

Java에서 사용자 정의 HashSet을 어떻게 구현할 수 있나요?

王林
王林앞으로
2023-09-03 10:01:021416검색

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

HashSetSet 인터페이스를 구현합니다. 이 인터페이스는 중복 값 ​​을 허용하지 않습니다. HashSet은 동기화되지 않았으며 스레드 안전하지 않습니다. HashSet에 중복 요소를 추가할 수 있으면 add() 메서드는 false를 반환하고 중복 요소는 HashSet에 추가할 수 없습니다.

Syntax

public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable, Serializable

아래 예에서는 다음을 구현할 수 있습니다. 맞춤 HashSet.

import java.util.*;
public class CustomHashSetTest extends AbstractSet<object> {
   private HashMap<Object, Object> map = 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<object> iterator() {
      return map.keySet().iterator();
   }
   @Override
   public int size() {
      return map.size();
   }
}
</object></object>

출력

England
Australia
India

위 내용은 Java에서 사용자 정의 HashSet을 어떻게 구현할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제