logo

Een lijst initialiseren in Java

De Java.util.Lijst is een onderliggende interface van Verzameling . Het is een geordende verzameling objecten waarin dubbele waarden kunnen worden opgeslagen. Omdat List de invoegvolgorde behoudt, is positionele toegang en invoeging van elementen mogelijk. Lijstinterface is geïmplementeerd door ArrayLijst , GelinkteLijst , Vector En Stapel klassen.

lijstinterfacejava



List is een interface en de instanties van List kunnen op de volgende manieren worden gemaakt:

 List a = new ArrayList(); List b = new LinkedList(); List c = new Vector(); List d = new Stack();>

Hieronder vindt u de volgende manieren om een ​​lijst te initialiseren:

  1. Met behulp van de List.add()-methode

    Omdat de lijst een interface is, kan deze niet rechtstreeks worden geïnstantieerd. U kunt echter objecten maken van de klassen die deze interface hebben geïmplementeerd en deze instantiëren.



    Er zijn maar weinig klassen die de List-interface hebben geïmplementeerd Stapel, ArrayList, LinkedList, Vector enz.

    Syntaxis:

     List list=new ArrayList(); List llist=new LinkedList(); List stack=new Stack();>

    Voorbeelden:






    import> java.util.*;> import> java.util.function.Supplier;> > public> class> GFG {> >public> static> void> main(String args[])> >{> > >// For ArrayList> >List list =>new> ArrayList();> >list.add(>1>);> >list.add(>3>);> >System.out.println(>'ArrayList : '> + list.toString());> > >// For LinkedList> >List llist =>new> LinkedList();> >llist.add(>2>);> >llist.add(>4>);> >System.out.println(>'LinkedList : '> + llist.toString());> > >// For Stack> >List stack =>new> Stack();> >stack.add(>3>);> >stack.add(>1>);> >System.out.println(>'Stack : '> + stack.toString());> >}> }>

    >

    >

    Uitgang:

     ArrayList : [1, 3] LinkedList : [2, 4] Stack : [3, 1]>

    Initialisatie van dubbele beugels kan ook worden gebruikt om het bovenstaande werk uit te voeren.

    Syntaxis:

     List list=new ArrayList(){{ add(1); add(2); add(3); }};>

    Voorbeelden:




    import> java.util.*;> > public> class> GFG {> >public> static> void> main(String args[])> >{> > >// For ArrayList> >List list =>new> ArrayList() {{> >add(>1>);> >add(>3>);> >} };> >System.out.println(>'ArrayList : '> + list.toString());> > >// For LinkedList> >List llist =>new> LinkedList() {{> >add(>2>);> >add(>4>);> >} };> >System.out.println(>'LinkedList : '> + llist.toString());> > >// For Stack> >List stack =>new> Stack() {{> >add(>3>);> >add(>1>);> >} };> >System.out.println(>'Stack : '> + stack.toString());> >}> }>

    >

    >

    Uitgang:

     ArrayList : [1, 3] LinkedList : [2, 4] Stack : [3, 1]>
  2. Arrays.asList() gebruiken

    • Onveranderlijke lijst maken

      Arrays.asList() creëert een onveranderlijke lijst van een array. Daarom kan het worden gebruikt om een ​​lijst met een array te instantiëren.

      Syntaxis:

      List list=Arrays.asList(1, 2, 3);>

      Voorbeelden:




      import> java.util.Arrays;> import> java.util.List;> > public> class> GFG {> >public> static> void> main(String args[])> >{> > >// Instantiating List using Arrays.asList()> >List list = Arrays.asList(>1>,>2>,>3>);> > >// Print the list> >System.out.println(>'List : '> + list.toString());> >}> }>

      >

      >

      Uitgang:

       List : [1, 2, 3]>
    • Veranderlijke lijst maken

      Syntaxis:

      List list=new ArrayList(Arrays.asList(1, 2, 3));>

      Voorbeelden:




      import> java.util.ArrayList;> import> java.util.Arrays;> import> java.util.List;> > public> class> GFG {> >public> static> void> main(String args[])> >{> > >// Creating a mutable list using Arrays.asList()> >List list =>new> ArrayList(> >Arrays.asList(>1>,>2>,>3>));> > >// Print the list> >System.out.println(>'List : '> + list.toString());> > >list.add(>5>);> > >// Print the list> >System.out.println(>'Modified list : '> + list.toString());> >}> }>

      soort in Java

      >

      >

      Uitgang:

       List : [1, 2, 3] Modified list : [1, 2, 3, 5]>
  3. Met behulp van Collections-klassemethoden

    Er zijn verschillende methoden in de klasse Collections die kunnen worden gebruikt om een ​​lijst te instantiëren. Zij zijn:

    1. Collections.addAll() gebruiken

      Collecties klasse heeft een statische methode Voeg alles toe() waarmee u een lijst kunt initialiseren. Collecties.addAll() een willekeurig aantal elementen opnemen nadat dit is opgegeven bij de collectie waarin de elementen moeten worden ingevoegd.

      Syntaxis:

      List list = Collections.EMPTY_LIST; Collections.addAll(list = new ArrayList(), 1, 2, 3, 4);>

      Voorbeelden:




      import> java.util.*;> > public> class> GFG {> >public> static> void> main(String args[])> >{> > >// Create an empty list> >List list =>new> ArrayList();> > >// Instantiating list using Collections.addAll()> >Collections.addAll(list,>1>,>2>,>3>,>4>);> > >// Print the list> >System.out.println(>'List : '> + list.toString());> >}> }>

      >

      >

      Uitgang:

       List : [1, 2, 3, 4]>
    2. Collections.unmodifiableList() gebruiken

      Collecties.unmodifiableList() retourneert een lijst die niet kan worden gewijzigd, dat wil zeggen dat er geen element kan worden toegevoegd of verwijderd. Elke poging om de lijst te wijzigen resulteert in een UnsupportedOperationExample.

      Syntaxis:

      List list = Collections .unmodifiableList(Arrays.asList(1, 2, 3));>

      Voorbeeld 1:




      import> java.util.*;> > public> class> GFG {> >public> static> void> main(String args[])> >{> > >// Creating the list> >List list = Collections.unmodifiableList(> >Arrays.asList(>1>,>2>,>3>));> > >// Print the list> >System.out.println(>'List : '> + list.toString());> >}> }>

      >

      >

      Uitgang:

       List : [1, 2, 3]>

      Voorbeeld 2:




      import> java.util.*;> > public> class> GFG {> >public> static> void> main(String args[])> >{> > >try> {> >// Creating the list> >List list = Collections.unmodifiableList(> >Arrays.asList(>1>,>2>,>3>));> > >// Print the list> >System.out.println(>'List : '> + list.toString());> > >// Trying to modify the list> >System.out.println(>'Trying to modify the list'>);> >list.set(>0>, list.get(>0>));> >}> > >catch> (Exception e) {> >System.out.println(>'Exception : '> + e);> >}> >}> }>

      >

      >

      Uitgang:

       List : [1, 2, 3] Trying to modify the list Exception : java.lang.UnsupportedOperationException>
    3. Collections.singletonList() gebruiken

      Collecties.singletonList() retourneert een onveranderlijke lijst die uit slechts één element bestaat.

      Syntaxis:

      List list = Collections.singletonList(2);>

      Voorbeeld 1:




      import> java.util.*;> > public> class> GFG {> >public> static> void> main(String args[])> >{> > >// Creating the list> >List list = Collections.singletonList(>2>);> > >// Print the list> >System.out.println(>'List : '> + list.toString());> >}> }>

      >

      >

      Uitgang:

       List : [2]>
  4. Java 8 Stream gebruiken

    Met de introductie van Stream en functioneel programmeren in Java 8 kan men nu elke stroom objecten construeren en deze vervolgens als een lijst verzamelen.

    Syntaxis:

     1. List list = Stream.of(1, 2, 3) .collect(Collectors.toList()); 2. List list = Stream.of(1, 2, 3) .collect(Collectors.toCollection(ArrayList::new)); 3. List list = Stream.of(1, 2, 3, 4) .collect(Collectors.collectingAndThen(Collectors.toList(), Collections::unmodifiableList));>

    Voorbeelden:




    import> java.util.*;> import> java.util.stream.Collectors;> import> java.util.stream.Stream;> > public> class> GFG {> >public> static> void> main(String args[])> >{> > >// Creating a List using Syntax 1> >List list1 = Stream.of(>1>,>2>,>3>)> >.collect(Collectors.toList());> > >// Printing the list> >System.out.println(>'List using Syntax 1: '> >+ list1.toString());> > >// Creating a List using Syntax 2> >List list2 = Stream> >.of(>3>,>2>,>1>)> >.collect(> >Collectors> >.toCollection(ArrayList::>new>));> > >// Printing the list> >System.out.println(>'List using Syntax 2: '> >+ list2.toString());> > >// Creating a List using Syntax 3> >List list3 = Stream> >.of(>1>,>2>,>3>,>4>)> >.collect(> >Collectors> >.collectingAndThen(> >Collectors.toList(),> >Collections::unmodifiableList));> > >// Printing the list> >System.out.println(>'List using Syntax 3: '> >+ list3.toString());> >}> }>

    >

    >

    Uitgang:

     List using Syntax 1: [1, 2, 3] List using Syntax 2: [3, 2, 1] List using Syntax 3: [1, 2, 3, 4]>
  5. Java gebruiken 9 List.of()

    Java 9 introduceerde de List.of()-methode die een willekeurig aantal argumenten in zich opneemt en daaruit een compacte en niet-wijzigbare lijst samenstelt.

    Syntaxis:

    List unmodifiableList = List.of(1, 2, 3);>

    Voorbeelden:




    import> java.util.List;> > public> class> GFG {> >public> static> void> main(String args[])> >{> > >// Creating a list using List.of()> >List unmodifiableList = List.of(>1>,>2>,>3>);> > >// Printing the List> >System.out.println(>'List : '> >+ unmodifiableList.toString());> >}> }>

    >

    >

    UITGANG:

     [1, 2, 3]>