Hashmap과 Hashset의 차이점은 Java 인터뷰에서 가장 자주 묻는 질문입니다. 컬렉션 프레임 워크 및 다중 스레드 인터뷰가 관여하지 않으면 불완전하다고 말할 수 있습니다. 컬렉션 프레임 워크의 문제에는 해시 세트 및 해시 맵이 포함되지 않으며 불완전하다고 말할 수 있습니다. Hashmap 및 Hashset은 컬렉션 프레임 워크의 일부이며 객체 모음을 사용할 수 있습니다. Collection Framework에는 자체 인터페이스 및 구현이 있으며 주로 세트 인터페이스, 목록 인터페이스 및 큐 인터페이스로 나뉩니다. 그들은 그들 자신의 특성을 가지고 있습니다. 세트는 객체가 중복 값을 갖도록 허용하지 않으며 목록은 복제를 허용합니다. 세트의 객체를 색인화합니다. 큐의 작동 원리는 FCFS 알고리즘 (첫 번째 서버)입니다.
먼저 해시 맵과 해시 세트가 무엇인지 살펴보고 그 차이점을 비교해 봅시다.
해시 세트는 무엇입니까?
해시 세트는 세트 인터페이스를 구현하여 세트에서 중복 값을 허용하지 않습니다. Hashset을 언급 할 때, 첫 번째는 객체가 해시 세트에 객체를 저장하기 전에 Equals () 및 hashcode () 메소드를 무시하는지 확인하여 객체의 값이 동일했는지 여부를 비교하여 세트에 저장된 객체가 없는지 확인하는 것입니다. 이 두 가지 메소드를 다시 작성하지 않으면이 메소드의 기본 구현이 사용됩니다.
Public Boolean Add (Object O) 메소드는 세트에 요소를 추가하는 데 사용됩니다. 요소 값이 반복되면 즉시 false를 반환하고 성공적으로 추가되면 true를 반환합니다.
해시 맵은 무엇입니까?
해시 맵은 키 값 쌍을 매핑하는 맵 인터페이스를 구현합니다. 맵에는 중복 키가 허용되지 않습니다. 맵 인터페이스의 두 가지 기본 구현, Hashmap 및 Treemap이 있습니다. Treemap은 객체의 순서를 저장하지만 Hashmap은 할 수 없습니다. 해시 맵을 사용하면 키와 값이 널이 될 수 있습니다. Hashmap은 동기화되지 않지만 Collection Framework는 Hashmap 동기화되도록하는 방법을 제공하여 여러 스레드가 동시에 HashMap에 액세스 할 수 있도록 하나의 스레드 만 맵을 변경하도록 할 수 있습니다.
공개 객체 Put (Object Key, Object Value) 메소드는 맵에 요소를 추가하는 데 사용됩니다.
이 기사를 읽어 Hashmap의 작동 방식을 확인 하여이 기사를 통해 Hashmap 및 Hashtable이 어떻게 다른지 확인할 수 있습니다.
해시 세트와 해시 맵의 차이
| *해시 맵* | *해시* |
| 해시 맵은 맵 인터페이스를 구현합니다 | 해시 세트 구현 설정 인터페이스 |
| 키 값 쌍을 저장하는 해시 맵 | 해시 세트는 객체 만 저장합니다 |
| put () 메소드를 사용하여 요소를지도에 넣습니다 | add () 메소드를 사용하여 요소를 세트에 넣습니다 |
| Hashmap은 주요 객체를 사용하여 해시 코드 값을 계산합니다 | 해시 세트는 멤버 객체를 사용하여 해시 코드 값을 계산합니다. 해시 코드는 두 객체에 대해 동일 할 수 있으므로 equals () 메소드는 객체의 동등성을 판단하는 데 사용됩니다. 두 객체가 다른 경우 False를 반환하십시오. |
| 해시 맵은 객체를 얻기 위해 유일한 키를 사용하기 때문에 더 빠릅니다. | 해시 세트는 해시 맵보다 느립니다 |
다른 차이점을 알고 있다면 메시지를 남겨주세요.
원본 링크 : Javarevisited Translation : importnew.com -Tang Xiaojuan 번역 링크 : http://www.importnew.com/6931.html