Java EnumSet: Hogyan használható az EnumSet a Java-ban?

Ez a cikk egy átfogó útmutató a Java EnumSet használatáról a paraméterek meghatározott elemeit tartalmazó enumkészlet létrehozásához.

A Java az egyik legnépszerűbb programozási nyelv, amelyet a . Az alkalmazások építése során gyakran használunk felsorolásokat egy megnevezett állandók csoportjának kiszolgálására. De ha egy Set felületet akarunk megvalósítani a felsorolás típusával, akkor az EnumSet-et kell használniuk . Ebben a cikkben a Java EnumSet-en a következő témákkal foglalkozom:



Java logó - Java EnumSet - Edureka



Mi a Java EnumSet?

Az EnumSet a Gyűjtemények beállítása dolgozni a enum típus . Az EnumSet a AbstractSet és megvalósítja a Set felületet. Az alábbiakban néhány fontos tudnivalót kell megértenünk a Java EnumSet-ről:

  • Csak olyan felsorolási értékeket tartalmaz, amelyek ugyanahhoz a felsorolási típushoz tartoznak
  • Tagja a
  • Nagy teljesítményű készlet megvalósítást biztosít, és nincs szinkronizálva
  • Ez nem teszi lehetővé a felhasználó számára NULL értékek hozzáadását, és NullPointerException programot dob
  • Az elemeket a mentés sorrendjében tároljuk
  • Meghibásodásmentes iterációt használ, amellyel megbizonyosodhat arról, hogy a ConcurrentModificationException dobásra kerül

A Java EnumSet-et a következő módon deklarálhatja:



Nyilatkozat

nyilvános absztrakt osztály EnumSet 

Ezután a Java EnumSet ezen cikkében ismertesse meg az osztály által kínált különböző módszereket.

Az EnumSet módszerei

A Java EnumSet által kínált különféle módszerek a következők:

Módszer Módosító és típus Leírás
nak,-nek (E e1)statikusEnum>
EnumSet
Eredetileg az említett elemet, azaz e1 tartalmazó enumkészlet létrehozására szolgál.
nak,-nek (E e1, E e2)statikusEnum>
EnumSet
Eredetileg az említett elemeket tartalmazó felsorolás létrehozására szolgál. Itt e1, e2.
hatótávolság (E-től, E-től)statikusEnum>
EnumSet
Olyan számlálási készlet létrehozására szolgál, amely kezdetben a két említett végpont által meghatározott tartomány összes elemét tartalmazza.
az összes (OsztályelementType)statikusEnum>
EnumSet
Felhíváskészlet létrehozására szolgál, amely tartalmazza az összes elemet a fent említett elemtípusban.
másolata (Gyűjteményc)statikusEnum>
EnumSet
Az említett gyűjteményből inicializált enumkészlet létrehozására szolgál.
másolata (EnumSets)statikusEnum>
EnumSet
Használható egy, az említett felsorolási halmazgal megegyező elemtípusú, kezdetben ugyanazokat az elemeket tartalmazó (ha van ilyen) enum halmaz létrehozására.
komplementOf (EnumSets)statikusEnum>
EnumSet
Felhívás létrehozására szolgál, ugyanazzal az elem típussal, mint az említett enum halmaz, amely kezdetben tartalmazza az összes ilyen típusú elemet nem tartalmazza a megadott készlet.
egyik sem (OsztályelementType)statikusEnum>
EnumSet
A használt tp üres elemszámot hoz létre a megadott elemtípussal.
klón ()EnumSetA készlet másolatának visszaadására szolgál.

Jegyzet: Használhatja a of () módszer legfeljebb 5 paraméter. Tehát, akkor ckezdetben a megadott elemeket tartalmazó enumkészletet a következőképpen írja le:



  • nak,-nek (E e1, E e2, E e3)
  • nak,-nek (E e1, E e2, E e3, E e4)
  • nak,-nek (E e1, E e2, E e3, E e4, E e5)

Mivel megvitattam az EnumSet-lel használt módszereket, majd a Java EnumSet oktatóanyagban, nézzük meg ezeknek a módszereknek a gyakorlati műveleteit.

A Java EnumSet műveletei

Az EnumSet működésének elmagyarázása érdekében a következő kódrészletet veszem figyelembe. Ez a kódrészlet tartalmaz egy sor enum értéket [DevOps, Big Data, Python, Data Science, RPA]. A kód későbbi szakaszában megmutatom, hogyan kell használni a különböző módszereket a következő sorrendben:

  • nak,-nek (E e1)
  • nak,-nek (E e1, E e2)
  • nak,-nek (E e1, E e2, E e3)
  • nak,-nek (E e1, E e2, E e3, E e4)
  • nak,-nek (E e1, E e2, E e3, E e4, E e5)
  • hatótávolság (E-től, E-től)
  • az összes (OsztályelementType)
  • másolata (Gyűjteményc)
  • másolata (EnumSets)
  • komplementOf (EnumSets)
  • egyik sem (Class elementType)
  • klón ()

Kódrészlet:

csomag edureka import java.util.ArrayList import java.util.Collection import java.util.EnumSet enum Tanfolyamok {DevOps, BigData, Python, DataScience, RPA} public class Példa {public static void main (String [] args) {// Hozzon létre egy EnumSet EnumSet sample_set // metódust // Egyetlen elem hozzáadása sample_set = EnumSet.of (Courses.DevOps) // Megjeleníti a System.out.println halmazot ('Az EnumSet egyetlen elem hozzáadása után:' + sample_set) / / Két elem hozzáadása sample_set = EnumSet.of (Courses.DevOps, Courses.BigData) // A System.out.println halmaz megjelenítése ('Az EnumSet két elem hozzáadása után:' + sample_set) // Három elem hozzáadása sample_set = EnumSet .of (Courses.DevOps, Courses.BigData, Courses.Python) // A System.out.println halmaz megjelenítése ('Az EnumSet három elem hozzáadása után:' + sample_set) // Négy elem hozzáadása sample_set = EnumSet.of ( Courses.DevOps, Courses.BigData, Courses.Python, Courses.DataScience) // Megjeleníti a System.out.println halmazot ('Az EnumSet négy elem hozzáadása után:' + sample_set) // Öt elem hozzáadása sample_set = EnumSet.of (Courses.DevOps, Courses.BigData, Courses.Python, Courses.DataScience, Courses.RPA) // Megjeleníti a System.out.println ('Az EnumSet készlet hozzáadása után öt elem a következő: '+ sample_set) // Range metódus sample_set = EnumSet.range (Courses.BigData, Courses.DataScience) // A System.out.println halmaz megjelenítése (' Az EnumSet tartománya: '+ sample_set) / / allOf method sample_set = EnumSet.allOf (Courses.class) // Megjeleníti a System.out.println halmazot ('Az EnumSet összes eleme:' + sample_set) // copyOf (Collection) metódus // Üres gyűjtemény létrehozása Gyűjtemény samplecollection = new ArrayList () // Elemek hozzáadása a samplecollection samplecollection.add (Courses.DevOps) samplecollection.add (Courses.BigData) samplecollection.add (Courses.Python) // A System.out.println mintagyűjtemény készlet megjelenítése ('A mintagyűjtemény készlet elemei:' + samplecollection) // Hozzon létre egy új EnumSet-et az EnumSet gyűjtemény_elemeinek tárolásához final_hu umset = EnumSet.copyOf (samplecollection) // Megjeleníti az EnumSet System.out.println ('Az EnumSet elemei:' + final_enumset) // copyOf (EnumSet) módszer // Az összes elem beszerzése a Courses EnumSet-ből example_set = EnumSet. allOf (Courses.class) // Megjeleníti a kezdeti EnumSet (sample_set) System.out.println ('A kezdeti EnumSet elemei:' + example_set) // Másolja az elemeket a fenti halmazból EnumSet final_set = EnumSet.copyOf ( példa_készlet) // Az elemeket jelenítse meg a másolt EnumSet System.out.println fájlban ('A másolt EnumSet elemei:' + final_set) //plementOf metódus // Sample Set sample_set = EnumSet.of (Courses.DevOps, Courses). BigData, Courses.Python) // EnumSet létrehozása EnumSetplement_set // Kiegészíti a fenti halmazatplement_set = EnumSet.complementOf (sample_set) // Az EnumSet kiegészítésben lévő elemek megjelenítése.out.println ('Az EnumSet kiegészítés elemei : '+plement_set) // noneOf method // Üres halmaz létrehozása EnumSet none_example_set = EnumSet.noneOf (Courses.class) // Az elemek megjelenítése a System.out.println halmazban ('Az EnumSet az elemeket tartalmazza:' + none_example_set) // klónozási módszer EnumSet final_clone_set = sample_set.clone () // Az EnumSet megjelenítése System.out.println ('A klónkészlet a következő elemekből áll:' + final_clone_set)}}

Kimenet:

Az EnumSet egyetlen elem hozzáadása után: [DevOps] Az EnumSet két elem hozzáadása után: [DevOps, BigData] Az EnumSet három elem hozzáadása után a következő: [DevOps, BigData, Python] Az EnumSet négy elem hozzáadása után: [DevOps , BigData, Python, DataScience] Az EnumSet öt elem hozzáadása után: [DevOps, BigData, Python, DataScience, RPA] Az EnumSet tartománya: [BigData, Python, DataScience] Az EnumSet összes eleme a következő: [DevOps , BigData, Python, DataScience, RPA] A mintagyűjtemény készlet elemei: [DevOps, BigData, Python] Az EnumSet elemei: [DevOps, BigData, Python] A kezdeti EnumSet elemei: [DevOps, BigData, Python, DataScience, RPA] A másolt EnumSet elemei: [DevOps, BigData, Python, DataScience, RPA] Az EnumSet kiegészítés elemei a következők: [DataScience, RPA] Az EnumSet az elemekből áll: [] A klónkészlet áll az elemek közül: [DevOps, BigData, Python]

Ezzel eljutottunk a Java EnumSet-en megjelent cikk végéhez. Ha többet szeretne tudni a Java-ról, olvassa el a mi oldalunkat .

Ha relevánsnak találta ezt a cikket a „Java EnumSet” témában, nézze meg a egy megbízható online tanulási vállalat, amelynek több mint 250 000 elégedett tanulóból álló hálózata van az egész világon.

Azért vagyunk itt, hogy segítsünk az utazás minden lépésében, és kidolgozzunk egy tananyagot, amelyet olyan hallgatók és szakemberek számára tervezünk, akik szeretnének Java Developer . A tanfolyamot úgy tervezték, hogy előrelépést nyújtson a Java programozásban, és kiképezzen mind az alapvető, mind a fejlett Java-koncepciókra a különféle megoldásokkal együtt tetszik Hibernálás & .

szál szinkronizálása java példában

Ha bármilyen kérdése merülne fel, nyugodtan tegye fel minden kérdését a „Java EnumSet” megjegyzés rovatában, és csapatunk örömmel válaszol.