On this document we will be showing a java example on how to use the add() method of HashSet Class. Basically this method provide a facility to add elements to the HashSet object. A boolean returned value will indicate if the addition of element succeeded.It will return true if it is, otherwise false. If the HashSet already contains the same as what we are trying to add, a return value would be false. Make a note that a HashSet is unsorted thus the order of elements are random, better watch out on this concept.

The HashSet as majority of the Collection classes make use of Generics such that if we have declared our set like HashSet set = new HashSet()  then the elements of inside our set is of type String. And we cannot insert different object type not unless its a subclass of the object declaration, otherwise a runtime error will be thrown.

The HashSet elements are unique, there would be no two identical elements that can exist.

Important notes for add() method:

  • specified by add in interface Collection<E>
  • specified by add in interface Set<E>
  • overrides add in class AbstractCollection<E>

Method Syntax

public boolean add(E e)

Method Argument

Data Type Parameter Description
E e element to be added to this set

Method Returns

The add(E e) method returns true if this set did not already contain the specified element.


Requires Java 1.2 and up

Java HashSet add() Example

Below is a java code demonstrates the use of add() method of HashSet class. The example presented might be simple however it shows the behavior of the add() method.


import static java.lang.System.*;

import java.util.HashSet;

 * This example source code demonstrates the use of  
 * add() method of HashSet class

public class HashSetAddExample {

	public static void main(String[] args) throws InterruptedException {

		// get the HashMap object from the method init()
		HashSet studentSet = init();

		// add a few more elements
		boolean result = studentSet.add("Darwin Villalobos");
		if (result) {
			out.println("Successfull added");
		} else {
			out.println("Operation failed");

		// add an element that is already existing
		result = studentSet.add("Darwin Villalobos");
		if (result) {
			out.println("Successfull added");
		} else {
			out.println("Operation failed");


	private static HashSet init() {
		// declare the HashSet object
		HashSet studentSet = new HashSet<>();
		// put contents to our HashMap
		studentSet.add("Shyra Travis");
		studentSet.add("Sharon Wallace");
		studentSet.add("Leo Batista");

		return studentSet;


There are two methods created on the above example, main() and init. The main method calls the init() which initializes and assign values to a HashSet object. The main() method assign to a new HashSet object the returned object by the init() method. A new element were added to the set by calling the add method. Based on the returned value, we have evaluated if the insertion is successful or not. If the result is false, the element we are trying to add is already existing. Make a note of this behavior.

Sample Output

Below is the sample output when you run the above example.

HashSet add() example output