LinkedHashSet in Java is a dedicated class that implements the dialing interface and extends the HashSet class with a dual list implementation. Internally, it uses a linked list to store items in a record. It has been added to version 1.4 of Java.
The Java LinkedHashSet class is similar to the HashSet class, except that it retains the order of the elements in the set in which they are inserted.
This means that LinkedHashSet not only uses the hash table to store items, but also manages a list of duplicate items in the order in which they are iterated.
Simply put: The LinkedHashSet items are not ordered, but LinkedHashSet items can be unpacked in the same order as they are added to the set.
LinkedHashSet class hierarchy on Java
The Java LinkedHashSet hierarchy chart is shown in the following figure.
The LinkedHashSet class does not define additional methods. Since the LinkedHashSet class expands HashSet and implements the defined interface, you can use all methods defined by the defined interface and the HashSet class when using the LinkedHashSet class.
Explanation of the Java LinkedHashSet class
LinkedHashSet is a generic class with the following statement
Here T defines a generic parameter that represents the data type of the items to be saved in the LinkedHashSet.
LinkedHashSet Properties
The important features of the Java LinkedHashSet class are as follows.
1. The Java LinkedHashSet class contains unique elements such as HashSet. Does not allow the insertion of double elements. If we try to add a double element, it will not work and will not change the order of iteration of the sentence.
2. With the LinkedHashSet class you can insert a null element.
3. The LinkedHashSet class in Java is not synchronized, which means it is not safe for stitches.
4. The LinkedHashSet class keeps track of the order in which the elements are inserted
5. It’s a little slower than the HashSet.
6. The bonded hash set is very effective for inserting and removing items.
Connected Hash Set Designer for Java
We can create a LinkedHashSet with one of the four designers. You’re next:
1. LinkedHashSet() : This constructor is used to create an empty LinkedHashSet. This is a standard LinkedHashSet. The general syntax for creating LinkedHashSet is as follows:
LinkedHashSet lhset = new LinkedHashSet() ;
2. LinkedHashSet(Collection c) : This constructor is used to initialize LinkedHashSet with the elements of the c The general syntax is as follows:
LinkedHashSet lhset = new LinkedHashSet (collection c) ;
3. LinkedHashSet(int initialCapacity) : This constructor is used to create LinkedHashSet with initialization of the capacity of the associated HashSet. The initialization of a ship requires an integer value. The general syntax for creating a set of linked hasheses in Java is given below:
LinkedHashSet lhset = new LinkedHashSet(int size) ;
4. LinkedHashSet (int initialCapacity, floating point number factor) : This constructor is used to create the LinkedHashSet with an initialization of the bandwidth and load factor of the associated HashSet.
LinkedHashSet lhset = new LinkedHashSet (int initialCapacity, floatloadFactor)
These designers work in the same way as the HashSet designers.
Examples of Java LinkedHashSet forprograms
In this section we will take a sample program in which we will perform several commonly used operations with Java LinkedHashSet.
1. Additive elements : Let’s create a program in which we perform operations such as adding, checking the size of LinkedHashSet, and so on. For a better understanding, refer to the source code of the program.
Program source code 1 :
Importing java.util.LinkedHashSet ;
public class AddTest
[
public static void head(String[] args)
[
// Create a Linked hash set of the common type
LinkedHashSet lhset= new LinkedHashSet() ;
// Check the size of LinkedHashSet before adding items.
int size = lhset.size() ;
System.out.println(LinkedHashSet size for adding items : + size) ;
// Add items to a linked hash set.
lhset.add(Red); // lhset.size() – 1.
lhset.add(Green); // lhset.size() – 2.
lhset.add(Yellow); // lhset.size() – 3.
lhset.add(Blue); // lhset.size() – 4.
lhset.add(Orange); // lhset.size() – 5.
System.out.println(Elements in the game: +lhset) ;
int size2 = lhset.size() ;
System.out.println(Size of the LinkedHashSet after adding elements: +size2) ;
// Add duplicate elements that are already present in the set.
lhset.add(red); // lhset.size() is always 5.
lhset.add(yellow); // lhset.size() is always 5.
// Make another String type record.
LinkedHashSet lhset2 = new LinkedHashSet() ;
lhset2.add(Brown) ;
lhset2.add(null) ;
// Add elements from set2 to set.
lhset.addAll(lhset2);
System.out.println(Elements in a set after add: +lhset);
}.
}
A way out:
LinkedHashSet size for adding : 0
Complete elements : Red, green, yellow, blue, orange]
Size LinkedHashSet after addition : 5
Elements of the set after addition : [Red, green, yellow, blue, orange, brown, zero]
2. Remove the : Let’s create another program in which we remove the linked hash set element.
Program source code 2 :
import java.util.LinkedHashSet ;
public class RemoveDemo
[
public static void main(String[] args)
[
// Create a Linked hash set of the common type
LinkedHashSet set= new LinkedHashSet() ;
// Add items to a linked hash set.
set.add(A);
set.add(G);
set.add(Y);
set.add(B);
set.add(O);
set.add(null) ;
System.out.println(Elements of the set: + set) ;
// Remove a chain element from a paired hash set.
Set.remove(null);
System.out.println(elements in the set after removal: +set);
System.out.println(set.size()+elements in the set) ;
// Create another set of linked hashes like String.
LinkedHashSet set2 = new LinkedHashSet();
set2.add(S);
set2.add(null);
System.out.println(elements in set2: +set2);
System.out.println(set2.size()+ elements in set2) ;
System.out.println (S in sentence 2?) +set2.contains(S)) ;
set.addAll(set2) ;
System.out.println(Items in the set after add: +set) ;
set.removeAll(set2);
System.out.println(Items in the set after removing set2: +set) ;
set.retainAll(set2);
System.out.println(After removing the common elements of set2 + set, set is + set);
}
}
A way out:
Items in the kit after removal : A, G, Y, B, O]
5 elements in set
elements in set 2 : [S, zero]2 elements in set2S in set2 ? A, G, Y, B, O, S, zero]
elements in the set after removing the set2 : A, G, Y, B, O]
Once the common elements have been removed from the set2, the set is set to [].
3. Delete duplicate items : Let’s create a program where we use LinkedHashSet to remove duplicate numbers from ArrayList.
Program source code 3 :
import java.util.ArrayList ;
import java.util.LinkedHashSet ;
public class RemovingDuplicate {
public void main(String[] args)
{
int[] num = {20, 30, 50, 30, 40, 80, 10, 10} ;
ArrayList ar = new ArrayList() ;
// Addition of numbers to the list of tables.
for(int i = 0; i < num.length; i+++) {
ar.add(num[i]);
}
System.out.println(Original list: +ar);
LinkedHashSet lhset = new LinkedHashSet<>(ar);
System.out.println(New list after removing double digits: +lhset);
}
}.
A way out:
Original list : 20, 30, 50, 30, 40, 80, 10]
New list after deletion of double numbers : [20, 30, 50, 40, 80, 10]
As you can see in the output, after removing duplicate items from the ArrayList, LinkedHashSet retains the order in which the items were inserted into the list.
4. Iterative LinkedHashSet : Let’s take the example of a program in which we iterate the LinkedHashSet elements with the iterator() method and extend them for the loop. Take a look at the following source code.
Program source code 4 :
import java.util.Iterator;
import java.util.LinkedHashSet;
public class IteratingLinkedHashSet {
public static void main(String[] args)
{
LinkedHashSet lhset = new LinkedHashSet<>();
lhset.add(New York);
lhset.add(Dhanbad);
lhset.add(Sydney);
lhset.add(Cape Town);
lhset.add(London) ;
// Iteration of the LinkedHashSet elements using the method Iterator()
System.out.println(iteration with iterators);
iterator itr = lhset.iterator();
while(itr.hasNext())
{
System.out.println(itr.next()));
}
System.out.println();
// LinkedHashSet iterators using extended elements for the
System.out.println(iteration using extended elements for the loop);
for (string s: lhset)
System.out.print(s +);
System.out.println();
}
}
A way out:
Iteration with the iterator
New York
Dhanbad
Sydney
Cape Town
London
Iteration with advanced hinge
New York Dunbad Sydney Cape Town London
5. Add user-defined objects : Let’s take the example of a program where we add custom objects like Student to LinkedHashSet and browse through them. Take a look at the following source code.
Program source code 5 :
public class student {
string name;
int id;
string city ;
Student(String name, int id, String city){
this.name = name;
this.id = ID;
this.city = city;
}
}
import java.util.LinkedHashSet;
public class StudentInfo {
public static void main(String[] args)
{
LinkedHashSet lhset = new LinkedHashSet() ;
// Create objects for students.
Student 1 = new student (John, 2345, New York);
student 2 = new student (Deep, 1234, Dunbad);
student 3 = new student (Ricky, 7583, Cape Town) ;
// Add elements (object left) to LinkedHashSet.
lhset.add(st1) ;
lhset.add(st2) ;
lhset.add(st3) ;
// Cross-reference to the corresponding Rash-Set.
for(Student s:lhset){
System.out.println(Name: +s.name++ Id: +s.id+City: +s.city);
}
}
}
A way out:
Name: John’s oath: 2345 City : New YorkName: In-depth identification : 1234 city : Name Dhanbad
: Ricky Eid: 7583 City: Cape Town
When to use LinkedHashSet on Java?
LinkedHashSet can be used if you don’t want to duplicate the elements (i.e. remove duplicates) and if you want to keep the order in which the elements are inserted.
If you want to specify different sequences, such as increasing or decreasing the order, you can use the TreeSet lesson, which you’ll learn in the next lesson.
better used: HashSet or LinkedHashSet?
If you don’t need to follow the order in which the items are inserted, use HashSet, which is faster and more efficient than LinkedHashSet.
We hope this tutorial has covered the main points of LinkedHashSet on Java with programming examples. I hope you’ve understood and practiced that.
Thanks for reading!
Related Tags:
antivirus is not enough cnn,what is antivirus software,norton security,malware,best antivirus,antivirus is not enough, you need protegent,is antivirus necessary reddit,do i need antivirus, windows 10,is antivirus necessary for windows 7,why do i need antivirus software,is antivirus necessary for mac,is antivirus necessary for android,why antivirus is not enough,briefly describe how anti-virus software works?,b. briefly describe how anti-virus software works?,how antivirus software works,brian complains that his virus protection doesn t work what do you think has gone wrong,how does a virus infect a computer