CodeGym/Java-blogg/Tilfeldig/HashSet inneholder() metode i Java
John Squirrels
Nivå
San Francisco

HashSet inneholder() metode i Java

Publisert i gruppen

Hva er et HashSet?

HashSet er en innebygd datatype i Java, og i lekmannstermer kan du si "HashSet er en uordnet samling av unike elementer." Ta en titt på et grunnleggende eksempel:HashSet inneholder() metode i Java - 2
Fig 1: En illustrasjon som viser gyldige og ugyldige eksempler på et HashSet
(Før du går videre, forventer vi at du kjenner til begrepene hashing og hash-tabeller .) HashSet utvider ( forlenger betyr at en klasse er arvet fra en annen klasse) AbstractSet og implementerer Set-grensesnittet. Her er noen punkter du må vurdere før du arbeider med HashSets:
  • Den lager en samling ( samling betyr en enkelt enhet av objekter, f.eks.: ArrayList, LinkedList, Vector etc) som bruker en hash-tabell for lagring.
  • Dupliserte verdier er ikke tillatt i et HashSet.
  • Du kan sette inn "null"-verdier i et HashSet.
  • Ingen innsettingsrekkefølge opprettholdes. Så hvis du ønsker å sette inn elementer i rekkefølge, vil et HashSet være et dårlig valg for dine behov.
  • Hvis du ønsker å hente/hente et element i konstant tid (O(1)), så er et HashSet en av de beste tilnærmingene du kan ta.

Hva er metoden HashSet.contains()?

HashSet.contains() er en boolsk metode for å sjekke om et element er til stede i en forekomst av HashSet eller ikke. Enkelt sagt, om settet inneholder ønsket element. Java.util.HashSet gir en effektiv implementering for det. La oss vise deg hvordan du effektivt kan bruke det til å løse spørsmålene dine.

inneholder() med heltall

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));
   }
}
Produksjon
Alle elementer i hashsett: [0, null, 1, 2, 3, 4, 5] Etter å ha lagt til duplikater: [0, null, 1, 2, 3, 4, 5] -------Bruk av inneholder metode- ------ digits.contains(0) : true digits.contains(2) : true digits.contains(3) : false digits.contains(null) : true

inneholder() med strenger

Ta en titt på et annet 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);
	}
}
Produksjon
Å krysse regnbuen: Rød Fiolett Gul Blå Indigo Oransje Grønn -------Using Contains Method------- rainbow.contains("Yellow"): true rainbow.contains("White"): falsk regnbue. contains("Lavendel"): false rainbow.contains("Red"): true rainbow.contains("Red"): false Etter fjerning av rødt: [fiolett, gul, blå, indigo, oransje, grønn]
Som du kan se er rekkefølgen på utdata forskjellig fra rekkefølgen for å sette elementene inn i hashsettet.

Konklusjon

Metoden contains() for HashSets er ganske enkel å bruke. Men i tilfelle forvirring kan du alltid referere til dette innlegget. Lykke til med koding! :)
Kommentarer
  • Populær
  • Ny
  • Gammel
Du må være pålogget for å legge igjen en kommentar
Denne siden har ingen kommentarer ennå