CodeGym /Java blog /Tilfældig /HashSet indeholder() metode i Java
John Squirrels
Niveau
San Francisco

HashSet indeholder() metode i Java

Udgivet i gruppen

Hvad er et HashSet?

HashSet er en indbygget datatype i Java, og i lægmandstermer kan du sige "HashSet er en uordnet samling af unikke elementer." Tag et kig på et grundlæggende eksempel:HashSet indeholder() metode i Java - 2
Fig. 1: En illustration, der viser gyldige og ugyldige eksempler på et HashSet
(Før du går videre, forventer vi, at du kender begreberne hashing og hash-tabeller .) HashSet udvider ( forlænger betyder, at en klasse er nedarvet fra en anden klasse) AbstractSet og implementerer Set-grænsefladen. Her er et par punkter, du skal overveje, før du arbejder med HashSets:
  • Det opretter en samling ( samling betyder en enkelt enhed af objekter, f.eks.: ArrayList, LinkedList, Vector osv.), der bruger en hash-tabel til opbevaring.
  • Duplikerede værdier er ikke tilladt i et HashSet.
  • Du kan indsætte "null" værdier i et HashSet.
  • Ingen indsættelsesrækkefølge opretholdes. Så hvis du ønsker at indsætte varer i rækkefølge, vil et HashSet være et dårligt valg til dine krav.
  • Hvis du ønsker at hente/hente et element i konstant tid (O(1)), så er et HashSet en af ​​de bedste tilgange, du kan tage.

Hvad er metoden HashSet.contains()?

HashSet.contains() er en boolsk metode til at kontrollere, om et element er til stede i en forekomst af HashSet eller ej. Kort sagt, om sættet indeholder det ønskede element. Java.util.HashSet giver en effektiv implementering til det. Lad os vise dig, hvordan du effektivt kan bruge det til at løse dine spørgsmål.

indeholder() med heltal


import java.util.HashSet;

public class HashSetDemo {
   public static void main(String[] args) {

       // Declare your hash set
       HashSet digits = new HashSet();

       digits.add(0);
       digits.add(1);
       digits.add(2);
       digits.add(3);
       digits.add(4);
       digits.add(5);
       digits.add(null);
       System.out.println("All elements in hashset:\t" + digits);

       // Try adding duplicates
       digits.add(5);
       digits.add(2);
       System.out.println("After adding duplicates: \t" + digits);

       System.out.println("\n-------Using Contains Method-------");
       // Check out if the following digits exist in the hashset
       System.out.println("digits.contains(0) : " + digits.contains(0));
       System.out.println("digits.contains(2) : " + digits.contains(2));
       System.out.println("digits.contains(3) : " + digits.contains(7));
       System.out.println("digits.contains(null) : " + digits.contains(null));
   }
}
Produktion
Alle elementer i hashset: [0, null, 1, 2, 3, 4, 5] Efter tilføjelse af dubletter: [0, null, 1, 2, 3, 4, 5] -------Brug Contains Method- ------ digits.contains(0) : true digits.contains(2) : true digits.contains(3) : false digits.contains(null) : sand

indeholder() med Strings

Se et andet eksempel på contains() -metoden med Strings .

import java.util.HashSet;
public class HashSetDemo {
     public static void main(String[] args) {

	  // Try working with another hash set of String type
	  HashSet rainbow = new HashSet(); 
		  
        // Adding elements into HashSet using add() 
        rainbow.add("Red"); 
        rainbow.add("Orange"); 
        rainbow.add("Yellow"); 
        rainbow.add("Green"); 
        rainbow.add("Blue"); 
        rainbow.add("Indigo"); 
        rainbow.add("Violet"); 
        
  
        // Let's traverse the hashset
        System.out.println("Traversing the rainbow:"); 
        for (String i : rainbow){
             System.out.println(i); 
        }
       // Check out if rainbow contains this color or not
    	 System.out.println("\n-------Using Contains Method-------");

        System.out.println("rainbow.contains(\"Yellow\"): \t" + rainbow.contains("Yellow")); 
        System.out.println("rainbow.contains(\"White\"): \t"  + rainbow.contains("White")); 
        System.out.println("rainbow.contains(\"Lavender\"): \t"  + rainbow.contains("Lavender")); 
        System.out.println("rainbow.contains(\"Red\"): \t"  + rainbow.contains("Red")); 
  
        // Remove a color from rainbow using remove() 
        rainbow.remove("Red"); 
    
        // Now consume  set contains() method again to check if it's still present
        System.out.println("rainbow.contains(\"Red\"): \t"  + rainbow.contains("Red")); 

        System.out.println("\nAfter removing Red: " + rainbow);         
	}
}
Produktion
At krydse regnbuen: Rød Violet Gul Blå Indigo Orange Grøn -------Brug Contains Method------- rainbow.contains("Gul"): true rainbow.contains("White"): falsk regnbue. contains("Lavender"): false rainbow.contains("Red"): true rainbow.contains("Red"): false Efter fjernelse af Rød: [Violet, Gul, Blå, Indigo, Orange, Grøn]
Som du kan se, er rækkefølgen af ​​output forskellig fra rækkefølgen af ​​at sætte elementerne ind i Hashset.

Konklusion

Metoden contains() for HashSets er ret enkel at bruge. Men i tilfælde af forvirring kan du altid henvise til dette indlæg. God kodning! :)
Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION