Java >> Java tutorial >  >> Tag >> ArrayList

Java ArrayList:En komplet guide til begyndere

Vi ved alle, at arrays er en vigtig struktur i Java, som kan bruges til at gemme statiske data. Men hvad nu hvis dine data skal opbevares dynamisk? For at gøre dette tilbyder Java en speciel samlingsramme kaldet Java ArrayList, der specifikt er beregnet til at gemme dynamiske data. I denne artikel vil jeg introducere dig til denne avancerede klasse af arrays og vise dig, hvordan de adskiller sig fra deres statiske modstykker. Her er de emner, der vil blive dækket i denne øvelse:

    • Introduktion til ArrayList:Hvordan erklærer man en ArrayList?
    • Hvad er brugen af ​​ArrayList?
    • Hierarki af ArrayList i samlingsrammen
    • Konstruktører af ArrayList
    • Java ArrayList-metoder
    • Forskellen mellem ArrayList og Arrays

Introduktion til ArrayList

ArrayList er implementeringen af ​​List Interface, hvor elementerne dynamisk kan tilføjes eller fjernes fra listen. Listens størrelse øges også dynamisk, hvis elementerne tilføjes mere end den oprindelige størrelse. Selvom det kan være langsommere end standard-arrays, kan det være nyttigt i programmer, hvor der er behov for masser af manipulation i arrayet.

Så hvordan erklærer du en ArrayList?

Det er meget enkelt. At erklære en ArrayList er som følger.
Erklæring: ArrayList al=new ArrayList();
al ->er en reference til en ArrayList, der indeholder referencer til objekter.

Hvad er brugen af ​​ArrayList?

  • ArrayList i Java bruges til at lagre en samling af elementer i dynamisk størrelse.
  • ArrayList initialiseres af en størrelse. Størrelsen kan dog stige, hvis samlingen vokser, og krympe, hvis genstande fjernes fra samlingen.
  • Java ArrayList giver os mulighed for tilfældigt at få adgang til listen.

Java ArrayList Tutorial | Eksempler på Java ArrayList | Java Tutorial for begyndere | Edureka

Denne video om vil give dig et kort indblik i ArrayList i Java og dets forskellige konstruktører og metoder sammen med et eksempel.


Hierarki af ArrayList i samlingsrammen

ArrayList bruger et dynamisk array til lagring af elementerne. Det arver AbstractList-klassen og implementerer List-grænsefladen. Listegrænsefladen udvider grænseflader for samling og iterable i hierarkisk rækkefølge.

  • Gentagelig: Det er en af ​​rodgrænsefladen i Java Collections Class. Grænsefladen udvider Collection Iterable, så alle undertyper af Collections også implementerer grænsefladen Iterable.
  • Samling: java.util.Collection s klasse består udelukkende af statiske metoder, der fungerer på eller returnerer samlinger.
  • Liste: Java.util.List er en børnegrænseflade til Collection. Det er en ordnet samling af objekter, hvor duplikerede værdier kan gemmes. Liste Interface er implementeret af ArrayList, LinkedList, Vector og Stack klasser.
  • Abstrakt liste: AbstractList-klassen er en abstrakt klasse, som udvider klassen AbstractCollection og implementerer grænsefladen List.
  • ArrayList: ArrayList er implementeringen af ​​List Interface, hvor elementerne dynamisk kan tilføjes eller fjernes fra listen.

Abonner på vores YouTube-kanal for at få nye opdateringer..!

Konstruktører i ArrayList

Konstruktør Beskrivelse
1. ArrayList() Bruges til at bygge en tom matrixliste
2. ArrayList(Collection c) Opbygger en array-liste, der initialiseres med elementerne i samling c
3. ArrayList(int kapacitet) Bruges til at bygge en array-liste, der har den specificerede startkapacitet

Eksempel, der illustrerer brugen af ​​konstruktører:

public class Constructors {
public static void main(String args[]){ 
ArrayList a = new ArrayList(); // Creating a new ArrayList

  int counter = 0;
  for(String: a ) {
    counter++;
 }
System.out.println("No arguments: (can't obtain)" + counter);
ArrayList b = new ArrayList(41); // Initializing capacity to ArrayList
counter = 0;
for(String: b ) {
 counter++;
}

System.out.println("Argument with capacity: (can't obtain)" + counter);
System.out.println();
String sArray[] = {"Bangalore", "Delhi", "Mumbai", "Pune", "Kerala", "Gujurat"};
List list = Arrays.asList(sArray);
ArrayList c = new ArrayList(list);
c.add("Dharwad");
for(String s: c) {
System.out.println("ArrayList c element:" + s);
}
System.out.println(c);
}
}


Bliv certificeret med projekter på industriniveau, og følg din karriere hurtigt

Java ArrayList-metoder

  • void add(int index, Object element): Denne metode bruges til at indsætte et bestemt element ved et bestemt positionsindeks i en liste.
    For eksempel:

package Edureka; 
import java.util.*; 
public class Arraylist { 
public static void main(String args[]) 
{ 
ArrayList al= new ArrayList();
al.add("Edureka); 
al.add("Java"); // Adding elements to ArrayList
al.add("Arrays");
 System.out.println("Size of arraylist:" +al.size());
 System.out.println("Contents of al:" +al); 
} 
}

I ovenstående kode tilføjer det elementerne til den oprettede ArrayList.

  • Objekt fjern(int index):
    Denne metode fjerner den første forekomst af det angivne element fra denne liste, hvis det er til stede. Hvis listen ikke indeholder elementet, er det uændret.
    For eksempel:
public class Arraylist {
public static void main(String args[])
{
ArrayList al= new ArrayList();
al.add("Edureka");
al.add("Java");
al.add("Arrays");
System.out.println("Size of arraylist:" +al.size());
System.out.println("Contents of al:" +al);
al.remove("Java"); // Removes Java element from the list
System.out.println("Contents of al:" +al);
}
}
  • Int størrelse():
    Det returnerer antallet af elementer på denne liste, dvs. størrelsen på listen
    For eksempel:

    public class Arraylist {
    public static void main(String args[])
    {
    ArrayList al= new ArrayList();
    al.add("Edureka");
    al.add("Java");
    al.add("Arrays");
    int asize = al.size(); // returns the size of the array
    System.out.println("Size of the array is:" +asize);
    }
    }
    
  • Objektklon():
    Denne metode returnerer en overfladisk kopi af denne ArrayList. dvs. den kloner hele ArrayList.
    For eksempel:

    public class Arraylist {
    public static void main(String args[])
    {
    ArrayList al= new ArrayList();
    Object cloneList; // Creating an object of clone
    al.add("Edureka");
    al.add("Java");
    al.add("Arrays");
    System.out.println("Contents of ArrayList al:" +al);
    cloneList= al.clone(); //Clones the entire ArrayList
    System.out.println("Elements in the cloned list are:");
    System.out.println(cloneList);
    }
    }
    
  • Objekt[] til Array():

    Det bruges til at returnere et array, der indeholder alle elementerne på listen i korrekt rækkefølge.
    For eksempel:

    public class Arraylist {
    public static void main(String args[])
    {
    ArrayList al= new ArrayList();
    al.add("Edureka");
    al.add("Java");
    al.add("Arrays");
    System.out.println("Contents of ArrayList al:" +al);
    Object[] objArray = al.toArray();
    System.out.println("Elements in the array list are:");
    for(int i=0; i<=objArray.length; i++)
    System.out.println(objArray[i]);
    }
    }
    

  • void clear():
    Denne metode bruges til at fjerne alle elementer fra enhver liste.
    For eksempel:

    public class Arraylist {
    public static void main(String args[])
    {
    ArrayList al= new ArrayList();
    al.add("Edureka");
    al.add("Java");
    al.add("Arrays");
    System.out.println("Contents of ArrayList al:" +al);
    al.clear(); // Removes element from Array
    System.out.println("Arraylist after clear:" +al);
    }
    }
    
  • int IndexOf(Objekt O):
    Denne metode returnerer indekset for den første forekomst af det angivne element på denne liste, eller -1 hvis denne liste ikke indeholder elementet.
    For eksempel:

    public class IndexOf {
    public static void main(String args[])
    {
    ArrayList Integer al = new ArrayList Integer(9);
    al.add(2);
    al.add(4);
    al.add(5);
    al.add(9);
    System.out.print("The initial values in ArrayList are :");
    for (Integer value : al) {
    System.out.print(value);
    System.out.print(" ");
    }
    int pos =al.indexOf(5)// using indexOf() to find index of 5
    System.out.println("
    The element 5 is at index :" + pos);
    }
    }
    
  • void trimToSize():
    trimToSize() metode i Java trimmer kapaciteten af ​​en ArrayList-instans til at være listens aktuelle størrelse. Denne metode bruges til at trimme en ArrayList-instans til antallet af elementer, den indeholder.
    For eksempel:

    public class TrimtoSize {
    public static void main(String args[]){
    ArrayListInteger al = new ArrayListInteger(9);
    al.add(2);
    al.add(4);
    al.add(5);
    al.add(7);
    al.trimToSize();
    System.out.println("The List elements are:");
    for (Integer number : al) {
    System.out.println("Number =": + number);
    }
    }
    }
    

Forskel mellem ArrayList og Arrays:

ArrayList Arrays
Den er af variabel længde, fordi den er dynamisk i størrelsen Den har en fast længde.
Kan tilføje forskellige objekter og data til listen Understøtter kun primitiv datatype
Tillader tilføjelse af duplikerede elementer Understøtter ikke en dublet tilføjelse
Kan krydse både fremad og bagud Kan kun krydse i fremadgående retning
Størrelse kan ændres dynamisk Størrelsen kan ikke ændres dynamisk

Dette bringer os til slutningen af ​​vores blog på Java ArrayList. Jeg håber, at denne blog var informativ og tilføjede værdi til din viden i Java.

Ønsker du at lære Java fra bunden fra professionelle?

Tjek Java-uddannelsen af Edureka, en betroet online læringsvirksomhed med et netværk af mere end 250.000 tilfredse elever spredt over hele kloden. Edurekas Java J2EE og SOA trænings- og certificeringskursus er designet til studerende og professionelle, der ønsker at være Java-udvikler. Kurset er designet til at give dig et forspring i Java-programmering og træne dig til både kerne- og avancerede Java-koncepter sammen med forskellige Java-frameworks som Hibernate &Spring.

Har du et spørgsmål til os? Nævn det i kommentarfeltet på denne "Java ArrayList"-blog, og vi vil vende tilbage til dig så hurtigt som muligt.


Java tag