Java EnumSet: Jak používat EnumSet v Javě?

Tento článek je komplexním průvodcem, jak pomocí sady Java EnumSet vytvořit sadu výčtu obsahující zadané prvky v parametrech.

Java je jedním z nejpopulárnějších programovacích jazyků používaných k sestavení . Při vytváření aplikací často používáme výčty k poskytování skupiny pojmenovaných konstant. Pokud však chcete implementovat rozhraní Set s typem výčtu, musíte použít EnumSet v . V tomto článku o Java EnumSet se budu věnovat následujícím tématům:

Logo Java - Java EnumSet - Edureka





jak vytvořit balíček v java

Co je Java EnumSet?

EnumSet je implementace Nastavit sbírky pracovat s typ výčtu . EnumSet sahá od Sada abstraktů a implementuje rozhraní Set. Následuje několik důležitých bodů, kterým musíte porozumět o EnumSet v Javě:

  • Obsahuje pouze hodnoty výčtu, které patří ke stejnému typu výčtu
  • Je členem
  • Poskytuje vysoce výkonnou implementaci sady a není synchronizována
  • Neumožňuje uživateli přidat hodnoty NULL a vyvolá NullPointerException
  • Prvky jsou uloženy v pořadí, v jakém jsou uloženy
  • Používá bezpečnou iteraci, kterou lze použít k zajištění, že je vyvolána ConcurrentModificationException

Java EnumSet můžete deklarovat následujícím způsobem:



Prohlášení

veřejná abstraktní třída EnumSet 

Dále v tomto článku o Java EnumSet pochopíme různé metody nabízené touto třídou.

Metody EnumSet

Různé metody nabízené programem Java EnumSet jsou následující:

Metoda Modifikátor a typ Popis
z (E e1)statickýVýčet>
EnumSet
Používá se k vytvoření výčtu, který původně obsahoval uvedený prvek, tj. E1.
z (E e1, e e2)statickýVýčet>
EnumSet
Používá se k vytvoření výčtu, který původně obsahoval uvedené prvky. Tady jsou e1, e2.
rozsah (E od, E do)statickýVýčet>
EnumSet
Používá se k vytvoření sady výčtu zpočátku obsahující všechny prvky v rozsahu definovaném dvěma uvedenými koncovými body.
vše z (TřídaelementType)statickýVýčet>
EnumSet
Používá se k vytvoření výčtu sady obsahující všechny prvky v uvedeném typu prvku.
kopie (SbírkaC)statickýVýčet>
EnumSet
Používá se k vytvoření výčtu sady inicializované ze zmíněné kolekce.
kopie (EnumSets)statickýVýčet>
EnumSet
Slouží k vytvoření sady výčtu se stejným typem prvku jako uvedená sada výčtu, původně obsahující stejné prvky (pokud existují).
doplněk (EnumSets)statickýVýčet>
EnumSet
Používá se k vytvoření sady výčtu se stejným typem prvku jako uvedená sada výčtu, původně obsahující všechny prvky tohoto typu, které jsou ne obsažené v zadané sadě.
žádný z (TřídaelementType)statickýVýčet>
EnumSet
Použitý tp vytvoří prázdnou výčtu se zadaným typem prvku.
klon ()EnumSetSlouží k vrácení kopie této sady.

Poznámka: Můžete použít metody () až 5 parametrů. Takže můžetereate sadu výčtu zpočátku obsahující zadané prvky takto:



  • z (E e1, E e2, E e3)
  • z (E e1, E e2, E e3, E e4)
  • z (E e1, E e2, E e3, E e4, E e5)

Vzhledem k tomu, že jsem diskutoval o metodách používaných s EnumSet, v dalším tutoriálu Java EnumSet se podívejme na praktické operace těchto metod.

Provoz Java EnumSet

Abych vám vysvětlil operace EnumSet, vezmu v úvahu následující fragment kódu. Tento fragment kódu obsahuje sadu hodnot výčtu [DevOps, Big Data, Python, Data Science, RPA]. V pozdější části kódu vám ukážu, jak používat různé metody v následujícím pořadí:

  • z (E e1)
  • z (E e1, e e2)
  • z (E e1, E e2, E e3)
  • z (E e1, E e2, E e3, E e4)
  • z (E e1, E e2, E e3, E e4, E e5)
  • rozsah (E od, E do)
  • vše z (TřídaelementType)
  • kopie (SbírkaC)
  • kopie (EnumSets)
  • doplněk (EnumSets)
  • žádný z (Class elementType)
  • klon ()

Úryvek kódu:

balíček edureka import java.util.ArrayList import java.util.Collection import java.util.EnumSet výčet Kurzy {DevOps, BigData, Python, DataScience, RPA} veřejná třída Příklad {public static void main (String [] args) {// Vytvořte EnumSet EnumSet sample_set // metody // Přidat jeden prvek sample_set = EnumSet.of (Courses.DevOps) // Zobrazit sadu System.out.println ('EnumSet po přidání jednoho prvku je:' + sample_set) / / Přidat dva prvky sample_set = EnumSet.of (Courses.DevOps, Courses.BigData) // Zobrazit sadu System.out.println ('EnumSet po přidání dvou prvků je:' + sample_set) // Přidat tři prvky sample_set = EnumSet .of (Courses.DevOps, Courses.BigData, Courses.Python) // Zobrazit sadu System.out.println ('EnumSet po přidání tří prvků je:' + sample_set) // Přidat čtyři prvky sample_set = EnumSet.of ( Courses.DevOps, Courses.BigData, Courses.Python, Courses.DataScience) // Zobrazit sadu System.out.println ('EnumSet po přidání čtyř prvků je:' + sample_set) // Přidat pět prvků sample_set = EnumSet.of (Courses.DevOps, Courses.BigData, Courses.Python, Courses.DataScience, Courses.RPA) // Zobrazit sadu System.out.println ('EnumSet po přidání Five elements is: '+ sample_set) // Range method sample_set = EnumSet.range (Courses.BigData, Courses.DataScience) // Display the set System.out.println (' The range of the EnumSet is: '+ sample_set) / / allOf method sample_set = EnumSet.allOf (Courses.class) // Zobrazit sadu System.out.println ('Všechny prvky v EnumSet jsou:' + sample_set) // metoda copyOf (Collection) // Vytvořit prázdnou kolekci Kolekce samplecollection = new ArrayList () // Přidat prvky do samplecollection samplecollection.add (Courses.DevOps) samplecollection.add (Courses.BigData) samplecollection.add (Courses.Python) // Zobrazit sadu kolekce vzorků System.out.println ('Elements in the sample collection set are:' + samplecollection) // Create a new EnumSet to store the collection items EnumSet final_en umset = EnumSet.copyOf (samplecollection) // Zobrazit EnumSet System.out.println ('Prvky v EnumSet jsou:' + final_enumset) // metoda copyOf (EnumSet) // Získejte všechny prvky z kurzů EnumSet example_set = EnumSet. allOf (Courses.class) // Zobrazit počáteční EnumSet (sample_set) System.out.println ('Prvky v počáteční EnumSet jsou:' + example_set) // Zkopírujte prvky z výše uvedené sady EnumSet final_set = EnumSet.copyOf ( example_set) // Zobrazit prvky v zkopírovaném EnumSet System.out.println ('Prvky v zkopírovaném EnumSet jsou:' + final_set) // metodaplementOf // Sample Set sample_set = EnumSet.of (Courses.DevOps, Courses. BigData, Courses.Python) // Vytvoření EnumSet EnumSet doplněk_set // Doplnění výše uvedené sady doplněk_set = EnumSet.complementOf (sample_set) // Zobrazit prvky v doplňku EnumSet System.out.println ('Prvky v doplňku EnumSet jsou : '+ doplněk_set) // noneOf metoda // Vytvořit prázdnou sadu EnumSet none_example_set = EnumSet.noneOf (Courses.class) // Zobrazit prvky v sadě System.out.println ('EnumSet se skládá z prvků:' + none_example_set) // klonová metoda EnumSet final_clone_set = sample_set.clone () // Zobrazit EnumSet System.out.println ('Sada klonů se skládá z prvků:' + final_clone_set)}}

Výstup:

Sada EnumSet po přidání jednoho prvku je: [DevOps] Sada EnumSet po přidání dvou prvků je: [DevOps, BigData] Sada EnumSet po přidání tří prvků je: [DevOps, BigData, Python] Sada EnumSet po přidání čtyř prvků je: [DevOps , BigData, Python, DataScience] EnumSet po přidání pěti prvků je: [DevOps, BigData, Python, DataScience, RPA] Rozsah EnumSet je: [BigData, Python, DataScience] Všechny prvky v EnumSet jsou: [DevOps , BigData, Python, DataScience, RPA] Prvky v sadě ukázkových kolekcí jsou: [DevOps, BigData, Python] Prvky v EnumSet jsou: [DevOps, BigData, Python] Prvky v počáteční EnumSet jsou: [DevOps, BigData, Python, DataScience, RPA] Prvky zkopírované EnumSet jsou: [DevOps, BigData, Python, DataScience, RPA] Prvky v doplňku EnumSet jsou: [DataScience, RPA] EnumSet se skládá z prvků: [] Sada klonů se skládá prvků: [DevOps, BigData, Python]

Tím se dostáváme na konec tohoto článku o Java EnumSet. Pokud se chcete o Javě dozvědět více, můžete se podívat na naši .

Pokud shledáte tento článek jako „Java EnumSet“ relevantní, podívejte se na důvěryhodná online vzdělávací společnost se sítí více než 250 000 spokojených studentů po celém světě.

Jsme tu, abychom vám pomohli s každým krokem na vaší cestě a vytvořili osnovy určené pro studenty a profesionály, kteří chtějí být Java Developer . Kurz je navržen tak, aby vám poskytl náskok v programování Java a naučil vás základní i pokročilé koncepty Java spolu s různými jako Přezimovat & .

kdy použít tuto javu

Pokud narazíte na jakékoli dotazy, neváhejte se zeptat na všechny své dotazy v sekci komentářů „Java EnumSet“ a náš tým vám rád odpoví.