logo

Saraksta inicializācija Java

The Java.util.List ir bērna saskarne Kolekcija . Tā ir sakārtota objektu kolekcija, kurā var saglabāt dublētās vērtības. Tā kā saraksts saglabā ievietošanas secību, tas nodrošina pozicionālu piekļuvi un elementu ievietošanu. Saraksta interfeisu ievieš ArrayList , LinkedList , Vektors un Kaudze klases.

listinterfacejava



List ir interfeiss, un saraksta gadījumus var izveidot šādos veidos:

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

Tālāk ir norādīti šādi saraksta inicializācijas veidi.

  1. Izmantojot metodi List.add().

    Tā kā saraksts ir saskarne, to nevar tieši izveidot. Tomēr var izveidot objektus no tām klasēm, kuras ir ieviesušas šo interfeisu, un tos instantierēt.



    Dažas klases, kas ir ieviesušas saraksta saskarni, ir Stack, ArrayList, LinkedList, Vector utt.

    Sintakse:

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

    Piemēri:






    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());> >}> }>

    >

    >

    Izvade:

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

    Dubultās iekavas inicializācija var izmantot arī iepriekš minēto darbu veikšanai.

    Sintakse:

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

    Piemēri:




    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());> >}> }>

    >

    >

    Izvade:

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

    • Nemainīgā saraksta izveide

      Arrays.asList() izveido nemainīgu sarakstu no masīva. Tādējādi to var izmantot, lai izveidotu sarakstu ar masīvu.

      Sintakse:

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

      Piemēri:




      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());> >}> }>

      >

      >

      Izvade:

       List : [1, 2, 3]>
    • Maināmā saraksta izveide

      Sintakse:

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

      Piemēri:




      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());> >}> }>

      sql vairāku tabulu atlase

      >

      >

      Izvade:

       List : [1, 2, 3] Modified list : [1, 2, 3, 5]>
  3. Kolekciju klases metožu izmantošana

    Kolekciju klasē ir dažādas metodes, kuras var izmantot, lai izveidotu sarakstu. Viņi ir:

    1. Izmantojot Collections.addAll()

      Kolekcijas klasei ir statiska metode pievienot visu() ko var izmantot saraksta inicializācijai. Collections.addAll() uzņemt jebkuru elementu skaitu pēc tam, kad tas ir norādīts ar kolekciju, kurā elementi jāievieto.

      Sintakse:

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

      Piemēri:




      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());> >}> }>

      >

      >

      Izvade:

       List : [1, 2, 3, 4]>
    2. Collections.unmodifiableList() izmantošana

      Collections.unmodifiableList() atgriež sarakstu, kuru nevar mainīt, t.i., nevar ne pievienot, ne dzēst elementu. Jebkurš mēģinājums modificēt sarakstu radīs Neatbalstītas darbības piemērs.

      Sintakse:

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

      1. piemērs:




      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());> >}> }>

      >

      >

      Izvade:

       List : [1, 2, 3]>

      2. piemērs:




      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);> >}> >}> }>

      >

      >

      Izvade:

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

      Collections.singletonList() atgriež nemainīgu sarakstu, kas sastāv tikai no viena elementa.

      Sintakse:

      List list = Collections.singletonList(2);>

      1. piemērs:




      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());> >}> }>

      >

      >

      Izvade:

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

    Ieviešot straumi un funkcionālo programmēšanu Java 8, tagad var izveidot jebkuru objektu straumi un pēc tam apkopot tos kā sarakstu.

    Sintakse:

     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));>

    Piemēri:




    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());> >}> }>

    >

    >

    Izvade:

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

    Java 9 ieviesa List.of() metodi, kas uzņem neierobežotu skaitu argumentu un no tiem izveido kompaktu un nemodificētu sarakstu.

    Sintakse:

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

    Piemēri:




    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());> >}> }>

    >

    >

    IZEJA:

     [1, 2, 3]>