Zestawy w języku Java: wiedza, jak pracować z interfejsem Java Set



Zestaw w Javie to zbiór nieuporządkowanych elementów; gdzie zduplikowane wartości nie mogą być przechowywane. Przeczytaj ten artykuł i dowiedz się wszystkiego o kolekcji zestawów Java.

Java Collection Framework zawiera wiele interfejsów, z których jednym jest Set Interface. Ten artykuł zawiera szczegółowe wprowadzenie do Ustawień . Poniżej znajdują się wskazówki, które należy omówić w tym artykule:

Zestawy w Javie

Zestaw należy zdefiniować jako zbiór nieuporządkowanych elementów, w których nie można przechowywać zduplikowanych wartości. Rozszerza Collection, a tym samym wszystkie metody w są dostępne w interfejsie zestawu. Jest implementowany przez HashSet, LinkedHashSet lub TreeSort.





Zestawy - Kolekcje Java - Edureka

Każda z tych implementacji działa inaczej podczas iteracji zestawu, głównie w odniesieniu do kolejności elementów oraz czasu potrzebnego na wstawienie i dostęp do elementów.



    • Hash Set tak nie daje żadnej gwarancji co do kolejności elementów podczas iteracji zestawu.
    • LinkedHashSet z drugiej strony daje gwarancję kolejności elementów podczas ich iteracji.
    • TreeSet zapewnia gwarancję, ale zbiór jest sortowany zgodnie z naturalną kolejnością lub przez określoną implementację komparatora.

Jak stworzyć zestaw?

Poniższy kod definiuje sposób tworzenia nowego zestawu:

Ustaw num = new HashSet ()



co to jest metoda javascript

Użyliśmy generyczne do zadeklarowania zestawu typu całkowitego.

Ustaw metody w Javie:

Na zbiorze możemy wykonać wiele operacji, takich jak:

Dodaj metodę

Metoda add wstawia element do . W poniższym kodzie wstawiamy zestaw nazw.

Ustaw strName = new HashSet () strName.add ('John') strName.add ('Doe') System.out.println (strName)

Wynik:

[Nieznany z nazwiska]

Usuń metodę

Ta metoda usuwa określony element z zestawu.

import java.util. * public class Main {public static void main (String args []) {// Tworzenie pustego zestawu set = new HashSet () // Dodawanie elementów do zestawu set.add ('John') set .add ('Doe') // Wyświetl zestaw System.out.println ('Set:' + set) // Usunięcie elementu „Doe” za pomocą metody remove () set.remove ('Doe') // Wyświetlanie zmodyfikowany zbiór System.out.println ('Set:' + set)}}

Wynik:

Zestaw: [John, Doe]

Zestaw: [John]

Metoda jest pusta

Ta metoda sprawdza, czy jest pusty nie jest. Zwraca true, jeśli zestaw jest pusty, lub false, jeśli jest inaczej.

import java.io. * import java.util. * public class Main {public static void main (String args []) {Set javaSet = new HashSet () // Dodawanie elementów do zestawu javaSet.add ('John') javaSet .add ('Doe') // Wyświetl zestaw System.out.println ('Set:' + javaSet) // Sprawdzanie, czy zestaw jest pusty System.out.println ('Empty Set:' + javaSet.isEmpty () ) // Czyszczenie zestawu za pomocą metody clear () javaSet.clear () // Sprawdzanie, czy zestaw jest pusty System.out.println ('Empty Set:' + javaSet.isEmpty ())}}

Wynik:

Zestaw: [John, Doe]

Pusty zestaw: fałsz

Pusty zestaw: prawda

Metoda rozmiaru

Metoda size () zwraca rozmiar zestawu, czyli liczbę elementów obecnych w zestawie.

import java.util. * public class Main {public static void main (String args []) {// Tworzenie zestawu Set set = new HashSet () set.add ('John') set.add ('Doe') System .out.println ('Set:' + set) // Wyświetlanie rozmiaru wysyłanego zestawu System.out.println ('Rozmiar zestawu:' + set.size ())}}

Wynik:


Zestaw: [John, Doe]

Rozmiar zestawu: 2

Iterowanie po zestawie

Możemy iterować po wszystkich elementach występujących w zestawie następującą metodą:

import java.util. * import java.util.HashSet public class Main {public static void main (String args []) {// Tworzenie zestawu HashSet HashSet javaSet = new HashSet () javaSet.add ('John') javaSet.add ('Doe') // Wyświetlanie zestawu System.out.println ('HashSet:' + javaSet) // Tworzenie iteratora Iterator itr = javaSet.iterator () // Wyświetlanie wartości po iteracji System.out.println (' Wartości iteratora: ') while (itr.hasNext ()) {System.out.println (itr.next ())}}}

Wynik:

HashSet: [John, Doe]

Wartości iteratora:

Jan

Robić

Wyszukiwanie w zestawie

Używamy metody zawiera (), aby określić, czy zestaw zawiera określony element. Zwraca wartość true, jeśli element zostanie znaleziony, lub false, jeśli jest inaczej.

import java.io. * import java.util.HashSet public class Main {public static void main (String args []) {// Tworzenie zestawu HashSet HashSet javaSet = new HashSet () javaSet.add ('John') javaSet.add ('Doe') // Wyświetlanie HashSet System.out.println ('HashSet:' + javaSet) // Sprawdzanie „John” w zbiorze System.out.println ('John in set:' + javaSet.contains ( 'John')) // Sprawdzanie 'Hazel' w zestawie System.out.println ('Hazel in set:' + javaSet.contains ('Hazel'))}}

Wynik:

HashSet: [John, Doe]

John w zestawie: prawda

Hazel w zestawie: fałsz

Podstawowe operacje na zestawach w Javie

  • Unia: Aby dodać jeden zestaw do drugiego, używamy operacji Union
  • Skrzyżowanie: Aby zachować wspólne wartości z obu zbiorów, używamy operacji przecięcia.
  • Różnica: Aby usunąć wartości jednego zestawu, z drugiego zestawu, używana jest operacja różnicowa.

Przykład

import java.util. * public class Main {public static void main (String args []) {Set d = new HashSet () d.addAll (Arrays.asList (new Integer [] {3, 2, 1, 9, 6 , 4, 0})) Set e = new HashSet () e.addAll (Arrays.asList (new Integer [] {3, 1, 9, 5, 2, 0, 7,})) // Union Operation Set union = new HashSet (d) union.addAll (e) System.out.println ('Union:' + union) // Ustaw operację na przecięciu intersection = new HashSet (d) intersection.retainAll (e) System.out.println (' Intersection: '+ intersection) // Różnica Operacja Ustaw różnicę = nowa HashSet (d) różnica.removeAll (e) System.out.println (' Różnica: '+ różnica)}}

Wynik:

Suma: [0, 1, 2, 3, 4, 5, 6, 7, 9]

Skrzyżowanie: [0, 1, 2, 3, 9]

Różnica: [4, 6]

Metody i operacje wymienione w metodzie sprawiają, że zestaw interfejsów ma elementarny i wydajny charakter.

W ten sposób doszliśmy do końca artykułu „Zestawy w Javie”. Jeśli chcesz dowiedzieć się więcej, zapoznaj się z autorstwa Edureka, zaufanej firmy zajmującej się edukacją online. Szkolenie i certyfikacja J2EE i SOA firmy Edureka ma na celu przeszkolenie zarówno podstawowych, jak i zaawansowanych koncepcji języka Java, a także różnych struktur Java, takich jak Hibernate i Spring.

Masz do nas pytanie? Wspomnij o tym w sekcji komentarzy w artykule „Zestawy w java”, a my skontaktujemy się z Tobą tak szybko, jak to możliwe.