They are entirely different constructs. A HashMap
is an implementation of Map
. A Map maps keys to values. The key look up occurs using the hash.
On the other hand, a HashSet
is an implementation of Set
. A Set is designed to match the mathematical model of a set. A HashSet
does use a HashMap
to back its implementation, as you noted. However, it implements an entirely different interface.
When you are looking for what will be the best Collection
for your purposes, this Tutorial is a good starting place. If you truly want to know what’s going on, there’s a book for that, too.
Related Posts:
- HashSet vs. ArrayList
- How to sort a HashSet?
- What are the differences between a HashMap and a Hashtable in Java?
- When to use LinkedList over ArrayList in Java?
- Difference between Arrays.asList(array) and new ArrayList
(Arrays.asList(array)) - Initialization of an ArrayList in one line
- How to sort an ArrayList?
- Exception in thread “main” java.lang.StackOverflowError
- Iterate through a HashMap [duplicate]
- Iterate through a HashMap [duplicate]
- Why is there no SortedList in Java?
- What is the significance of load factor in HashMap?
- How to update a value, given a key in a hashmap?
- Collision resolution in Java HashMap
- Hashtable, HashMap, HashSet , hash table concept in Java collection framework
- Printing HashMap In Java
- Java Hashmap: How to get key from value?
- Sorting HashMap by values
- FIFO based Queue implementations?
- HashMap get/put complexity
- Create a List of primitive int?
- How to convert int[] to Integer[] in Java?
- Change priorityQueue to max priorityqueue
- Collections.emptyMap() vs new HashMap()
- “Cannot create generic array of ..” – how to create an Array of Map
? - Sort a Map
by values - How to calculate the intersection of two sets?
- Why is a ConcurrentModificationException thrown and how to debug it
- Union or intersection of Java Sets
- Map of maps – how to keep the inner maps as maps?
- toring and Retrieving ArrayList values from hashmap
- What does Java option -Xmx stand for? [duplicate]
- How do I convert a String to an int in Java?
- What does Java option -Xmx stand for? [duplicate]
- Is there an invisible character that is not regarded as whitespace?
- Problem with gif with transparent background
- Finding white rectangle in an image
- 1000 * 60 * 60 * 24 * 30 results in a negative number [duplicate]
- How to convert nanoseconds to seconds using the TimeUnit enum?
- Search for words with telephone numbers from 2-3-4 tree
- Using or ‘|’ in regex [duplicate]
- How to format strings in Java
- What is the difference between x86 and x64
- && (AND) and || (OR) in IF statements
- How to use the toString method in Java?
- What is a NullPointerException, and how do I fix it?
- What exactly is Apache Camel?
- Unable to find valid certification path to requested target – error even after cert imported
- Unable to find valid certification path to requested target – error even after cert imported
- What is the equivalent of the C++ Pair
in Java? - Java – Convert integer to string [duplicate]
- Getting random numbers in Java [duplicate]
- What is an instance variable in Java?
- javac is not recognized as an internal or external command, operable program or batch file [closed]
- javac is not recognized as an internal or external command, operable program or batch file [closed]
- Java: “error: cannot find symbol”
- How does the Java ‘for each’ loop work?
- What is a StackOverflowError?
- How to use Collections.sort() in Java?
- How to uninstall Eclipse?
- Is GNU’s Java Compiler (GCJ) dead? [closed]
- How does System.out.print() work?
- How do I “decompile” Java class files? [closed]
- How do I determine whether an array contains a particular value in Java?
- How to initialize an array in Java?
- How does the Java ‘for each’ loop work?
- Java 8 Iterable.forEach() vs foreach loop
- Initialize part of an array in java
- How can I solve Exception in thread “main” java.lang.NullPointerException error [duplicate]
- How to split a string in Java
- What does “Could not find or load main class” mean?
- What does “Could not find or load main class” mean?
- Why am I getting a NoClassDefFoundError in Java?
- How to avoid “ConcurrentModificationException” while removing elements from `ArrayList` while iterating it? [duplicate]
- Eclipse/Maven error: “No compiler is provided in this environment”
- How do I compare strings in Java?
- What is reflection and why is it useful?
- Implementing UML diagram to Java [closed]
- How to round a number to n decimal places in Java
- Using Pairs or 2-tuples in Java [duplicate]
- How do I create a file and write to it?
- Could not reserve enough space for object heap
- How to convert a char to a String?
- What is the proper way to handle a NumberFormatException when it is expected?
- What causes “Unable to access jarfile” error?
- What does “Could not find or load main class” mean?
- How do you create a dictionary in Java? [closed]
- Reading a plain text file in Java
- Error unable to access jarfile C:\Jar
- Where is JRE 11? [duplicate]
- In laymans terms, what does ‘static’ mean in Java? [duplicate]
- How to convert/parse from String to char in java?
- Reverse a string in Java
- Static Classes In Java
- Is there any doubly linked list implementation in Java?
- How to set a Timer in Java?
- How do I declare and initialize an array in Java?
- How to parse JSON in Java
- Is there a way to convert all comments into javadoc comments? [Eclipse/Java]
- Convert list to array in Java [duplicate]