Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java에서 Set/HashSet의 내부 작업

<시간/>

집합 데이터 구조는 고유 값만 저장하는 데 사용됩니다. 즉, 집합에 중복 값이 ​​저장되지 않습니다. HashSet이 생성되면 내부적으로 HashMap을 구현합니다. 'add' 기능을 사용하여 HashSet에 요소를 삽입할 수 있습니다. 이것은 HashMap이 내부적으로 생성되었기 때문에 내부적으로 'put' 함수를 호출합니다. 따라서 Set은 HashMap의 도움으로 고유한 값을 취합니다.

HashMap은 고유한 키와 값 쌍을 포함하며 키와 값 쌍은 'put' 기능을 사용하여 삽입됩니다. 'put' 함수를 호출하면 키에 대한 매핑이 있는지 여부에 따라 키 또는 null과 관련된 이전 값이 반환됩니다.

LinkedHashSet은 HashSet 클래스로 확장됩니다. 즉, LinkedHashSet은 '수퍼' 기능을 사용하여 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' 기능을 사용하여 해시 집합에 추가됩니다. 그런 다음 이러한 요소가 화면에 표시됩니다.