Java EnumSet: Hur använder jag EnumSet i Java?



Den här artikeln är en omfattande guide om hur du använder Java EnumSet för att skapa en enumuppsättning som innehåller angivna element i parametrarna.

Java är ett av de mest populära programmeringsspråken som används för att bygga en . När vi bygger applikationer använder vi ofta uppräkningar för att betjäna en grupp med namngivna konstanter. Men om du vill implementera ett Set-gränssnitt med uppräkningstypen måste du använda EnumSet i . I den här artikeln om Java EnumSet kommer jag att täcka följande ämnen:

Java-logotyp - Java EnumSet - Edureka





trådsynkronisering i java-exempel

Vad är Java EnumSet?

EnumSet är en implementering av Ställ in samlingar att arbeta med enumtyp . EnumSet sträcker sig från Abstrakt Set och implementerar Set-gränssnittet. Följande är några viktiga punkter du behöver förstå om EnumSet i Java:

  • Innehåller endast enumvärden som tillhör samma uppräkningstyp
  • Det är medlem i
  • Ger implementering med hög prestanda och är inte synkroniserad
  • Det tillåter inte användaren att lägga till NULL-värden och kastar en NullPointerException
  • Element lagras i den ordning de sparas
  • Använder en felsäker iteration, som kan användas för att se till att ConcurrentModificationException kastas

Du kan deklarera Java EnumSet på följande sätt:



Deklaration

offentlig abstrakt klass EnumSet 

Därefter, i den här artikeln på Java EnumSet, låt oss förstå de olika metoderna som erbjuds av denna klass.

Metoder för EnumSet

De olika metoderna som erbjuds av Java EnumSet är följande:

Metod Modifierare och typ Beskrivning
av (E e1)statiskEnum>
EnumSet
Används för att skapa en enum-uppsättning som ursprungligen innehåller det nämnda elementet, dvs. e1.
av (E e1, E e2)statiskEnum>
EnumSet
Används för att skapa en enum-uppsättning som ursprungligen innehåller de nämnda elementen. Här är det e1, e2.
räckvidd (E från, E till)statiskEnum>
EnumSet
Används för att skapa en enum-uppsättning som ursprungligen innehåller alla element i intervallet som definieras av de två nämnda slutpunkterna.
alla (KlasselementType)statiskEnum>
EnumSet
Används för att skapa en uppsättning som innehåller alla element i den nämnda elementtypen.
kopia av (Samlingc)statiskEnum>
EnumSet
Används för att skapa en uppsättning som initierats från den nämnda samlingen.
kopia av (EnumSets)statiskEnum>
EnumSet
Används för att skapa en enum-uppsättning med samma elementtyp som den nämnda enum-uppsättningen, som ursprungligen innehåller samma element (om det finns någon).
komplement av (EnumSets)statiskEnum>
EnumSet
Används för att skapa en enum-uppsättning med samma elementtyp som den nämnda enum-uppsättningen, som ursprungligen innehåller alla element av denna typ som är inte i den angivna uppsättningen.
ingen av (KlasselementType)statiskEnum>
EnumSet
Använd tp skapa en tom uppsättning med den angivna elementtypen.
klona ()EnumSetAnvänds för att returnera en kopia av denna uppsättning.

Notera: Du kan använda av () -metoden upp till 5 parametrar. Så du kan cåterskapa en enumset som ursprungligen innehåller de angivna elementen enligt följande:



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

Sedan har jag diskuterat metoderna som används med EnumSet, nästa i Java EnumSet tutorial, låt oss se de praktiska funktionerna för dessa metoder.

Operationer av Java EnumSet

För att förklara dig hur EnumSet fungerar kommer jag att överväga följande kodavsnitt. Detta kodavsnitt innehåller en uppsättning enumvärden [DevOps, Big Data, Python, Data Science, RPA]. I det senare avsnittet av koden kommer jag att visa dig hur du använder olika metoder i följande sekvens:

  • av (E e1)
  • av (E e1, E e2)
  • av (E e1, E e2, E e3)
  • av (E e1, E e2, E e3, E e4)
  • av (E e1, E e2, E e3, E e4, E e5)
  • räckvidd (E från, E till)
  • alla (KlasselementType)
  • kopia av (Samlingc)
  • kopia av (EnumSets)
  • komplement av (EnumSets)
  • ingen av (KlasselementTyp)
  • klona ()

Kodavsnitt:

paket edureka import java.util.ArrayList import java.util.Collection import java.util.EnumSet enum Courses {DevOps, BigData, Python, DataScience, RPA} public class Exempel {public static void main (String [] args) {// Skapa en EnumSet EnumSet sample_set // av metod // Lägg till single element sample_set = EnumSet.of (Courses.DevOps) // Visa uppsättningen System.out.println ('EnumSet efter att ha lagt till ett enda element är:' + sample_set) / / Lägg till två element sample_set = EnumSet.of (Courses.DevOps, Courses.BigData) // Visa uppsättningen System.out.println ('EnumSet efter att ha lagt till två element är:' + sample_set) // Lägg till tre element sample_set = EnumSet .of (Courses.DevOps, Courses.BigData, Courses.Python) // Visa uppsättningen System.out.println ('EnumSet efter att ha lagt till tre element är:' + sample_set) // Lägg till fyra element sample_set = EnumSet.of ( Courses.DevOps, Courses.BigData, Courses.Python, Courses.DataScience) // Visa uppsättningen System.out.println ('EnumSet efter att ha lagt till fyra element är:' + sample_set) // Lägg till fem element sample_set = EnumSet.of (Courses.DevOps, Courses.BigData, Courses.Python, Courses.DataScience, Courses.RPA) // Visa uppsättningen System.out.println ('EnumSet efter tillsats fem element är: '+ sample_set) // Range method sample_set = EnumSet.range (Courses.BigData, Courses.DataScience) // Visa uppsättningen System.out.println (' Området för EnumSet är: '+ sample_set) / / allOf-metod sample_set = EnumSet.allOf (Courses.class) // Visa uppsättningen System.out.println ('Alla element i EnumSet är:' + sample_set) // copyOf (Collection) -metod // Skapa en tom samling Samlingssamplecollection = new ArrayList () // Lägg till element i samplecollection samplecollection.add (Courses.DevOps) samplecollection.add (Courses.BigData) samplecollection.add (Courses.Python) // Visa provsamlingsuppsättningen System.out.println ('Element i provsamlingsuppsättningen är:' + samplecollection) // Skapa en ny EnumSet för att lagra samlingsobjekten EnumSet final_en umset = EnumSet.copyOf (samplecollection) // Visa EnumSet System.out.println ('Element i EnumSet är:' + final_enumset) // copyOf (EnumSet) -metod // Hämta alla element från kurser EnumSet exempel_set = EnumSet. allOf (Courses.class) // Visa den ursprungliga EnumSet (sample_set) System.out.println ('Elementen i den initiala EnumSet är:' + exempel_set) // Kopiera elementen från ovanstående uppsättning EnumSet final_set = EnumSet.copyOf ( exempel_set) // Visa elementen i det kopierade EnumSet System.out.println ('Elementen i det kopierade EnumSet är:' + final_set) // complementOf-metod // Provuppsättning sample_set = EnumSet.of (Courses.DevOps, Courses. BigData, Courses.Python) // Skapa en EnumSet EnumSet complement_set // Komplettera ovanstående set complement_set = EnumSet.complementOf (sample_set) // Visa elementen i komplementet EnumSet System.out.println ('Elementen i komplementet EnumSet är : '+ komplement_set) // noneOf-metod // Skapa tom uppsättning EnumSet none_example_set = EnumSet.noneOf (Courses.class) // Visa elementen i uppsättningen System.out.println ('EnumSet består av elementen:' + none_exempel_set) // klonmetod EnumSet final_clone_set = sample_set.clone () // Visa EnumSet System.out.println ('Klonuppsättningen består av elementen:' + final_klon_set)}}

Produktion:

EnumSet efter att ha lagt till ett enda element är: [DevOps] EnumSet efter att ha lagt till två element är: [DevOps, BigData] EnumSet efter att ha lagt till tre element är: [DevOps, BigData, Python] EnumSet efter att ha lagt till fyra element är: [DevOps , BigData, Python, DataScience] EnumSet efter att ha lagt till fem element är: [DevOps, BigData, Python, DataScience, RPA] Området för EnumSet är: [BigData, Python, DataScience] Alla element i EnumSet är: [DevOps , BigData, Python, DataScience, RPA] Element i samlingsuppsättningen för exempel är: [DevOps, BigData, Python] Element i EnumSet är: [DevOps, BigData, Python] Elementen i den första EnumSet är: [DevOps, BigData, Python, DataScience, RPA] Elementen i den kopierade EnumSet är: [DevOps, BigData, Python, DataScience, RPA] Elementen i komplementet EnumSet är: [DataScience, RPA] EnumSet består av elementen: [] Klonsatsen består av elementen: [DevOps, BigData, Python]

Detta leder oss till slutet av den här artikeln om Java EnumSet. Om du vill veta mer om Java kan du hänvisa till vår .

ansible vs kock vs marionett

Om du tyckte att den här artikeln om “Java EnumSet” var relevant, kolla in ett pålitligt online-lärande företag med ett nätverk med mer än 250 000 nöjda elever spridda över hela världen.

Vi är här för att hjälpa dig med varje steg på din resa och komma med en läroplan som är utformad för studenter och yrkesverksamma som vill vara en Java-utvecklare . Kursen är utformad för att ge dig ett försprång till Java-programmering och träna dig för både kärn- och avancerade Java-koncept tillsammans med olika tycka om Övervintra & .

Om du stöter på några frågor är du välkommen att ställa alla dina frågor i kommentarsektionen i “Java EnumSet” så svarar vårt team gärna.