Java ArrayList (με παραδείγματα)

Σε αυτό το σεμινάριο, θα μάθουμε για την τάξη ArrayList στην Java. Θα μάθουμε για διάφορες λειτουργίες και μεθόδους της λίστας πίνακα με τη βοήθεια παραδειγμάτων.

Η ArrayListκλάση του πλαισίου συλλογών Java παρέχει τη λειτουργικότητα των συστοιχιών με δυνατότητα αλλαγής μεγέθους .

Εφαρμόζει τη Listδιεπαφή.

Εφαρμογή Java ArrayList

Java ArrayList Vs Array

Στην Java, πρέπει να δηλώσουμε το μέγεθος ενός πίνακα πριν μπορέσουμε να τον χρησιμοποιήσουμε. Μόλις δηλωθεί το μέγεθος ενός πίνακα, είναι δύσκολο να τον αλλάξετε.

Για να χειριστούμε αυτό το ζήτημα, μπορούμε να χρησιμοποιήσουμε την ArrayListτάξη. Μας επιτρέπει να δημιουργήσουμε πίνακες με δυνατότητα αλλαγής μεγέθους.

Σε αντίθεση με τους πίνακες, οι πίνακες πίνακα μπορούν να προσαρμόσουν αυτόματα την χωρητικότητά του όταν προσθέτουμε ή αφαιρούμε στοιχεία από αυτό. Ως εκ τούτου, οι πίνακες πίνακα είναι επίσης γνωστοί ως δυναμικοί πίνακες .

Δημιουργία ArrayList

Πριν από τη χρήση ArrayList, πρέπει πρώτα να εισαγάγουμε το java.util.ArrayListπακέτο. Εδώ είναι πώς μπορούμε να δημιουργήσουμε λίστες στο Java:

 ArrayList arrayList= new ArrayList();

Εδώ, το Type υποδεικνύει τον τύπο μιας λίστας συστοιχιών. Για παράδειγμα,

 // create Integer type arraylist ArrayList arrayList = new ArrayList(); // create String type arraylist ArrayList arrayList = new ArrayList();

Στο παραπάνω πρόγραμμα, χρησιμοποιήσαμε Integerτο int. Είναι επειδή δεν μπορούμε να χρησιμοποιήσουμε πρωτόγονους τύπους κατά τη δημιουργία μιας λίστας συστοιχιών. Αντ 'αυτού, πρέπει να χρησιμοποιήσουμε τις αντίστοιχες τάξεις περιτυλίγματος.

Εδώ, Integerείναι η αντίστοιχη κατηγορία περιτυλίγματος του int. Για να μάθετε περισσότερα, επισκεφτείτε την τάξη Java wrapper.

Παράδειγμα: Δημιουργία ArrayList στην Java

 import java.util.ArrayList; class Main ( public static void main(String() args)( // create ArrayList ArrayList languages = new ArrayList(); // Add elements to ArrayList languages.add("Java"); languages.add("Python"); languages.add("Swift"); System.out.println("ArrayList: " + languages); ) )

Παραγωγή

 Λίστα Array: (Java, Python, Swift)

Στο παραπάνω παράδειγμα, δημιουργήσαμε ArrayListονομαστικές γλώσσες.

Εδώ, χρησιμοποιήσαμε τη add()μέθοδο για την προσθήκη στοιχείων στη λίστα πίνακα. Θα μάθουμε περισσότερα για τη add()μέθοδο αργότερα σε αυτό το σεμινάριο.

Σημείωση : Μπορούμε επίσης να δημιουργήσουμε μια λίστα πίνακα χρησιμοποιώντας τη Listδιεπαφή. Είναι επειδή η ArrayListτάξη εφαρμόζει τη Listδιεπαφή.

 List list = new ArrayList();

Βασικές λειτουργίες στο ArrayList

Η ArrayListτάξη παρέχει διάφορες μεθόδους για την εκτέλεση διαφορετικών λειτουργιών σε πίνακες πίνακα. Σε αυτό το σεμινάριο θα εξετάσουμε μερικές κοινές λειτουργίες λίστας συστοιχιών:

  • Προσθέστε στοιχεία
  • Στοιχεία πρόσβασης
  • Αλλαγή στοιχείων
  • Αφαιρέστε τα στοιχεία

1. Προσθέστε στοιχεία σε μια λίστα ArrayList

Για να προσθέσουμε ένα στοιχείο στη λίστα πίνακα, χρησιμοποιούμε τη add()μέθοδο της ArrayListκλάσης. Για παράδειγμα,

 import java.util.ArrayList; class Main ( public static void main(String() args)( // create ArrayList ArrayList languages = new ArrayList(); // add() method without the index parameter languages.add("Java"); languages.add("C"); languages.add("Python"); System.out.println("ArrayList: " + languages); // add() method with the index parameter languages.add(1, "JavaScript"); System.out.println("Updated ArrayList: " + languages); ) )

Παραγωγή

 ArrayList: (Java, C, Python) Ενημερωμένη ArrayList: (Java, JavaScript, C, Python)

Στο παραπάνω παράδειγμα, δημιουργήσαμε ArrayListονομαστικές γλώσσες. Εδώ, χρησιμοποιήσαμε τη add()μέθοδο για την προσθήκη στοιχείων σε γλώσσες.

Παρατηρήστε τη δήλωση,

 languages.add(1, "JavaScript");

Εδώ, χρησιμοποιήσαμε την παράμετρο αριθμού ευρετηρίου . Πρόκειται για μια προαιρετική παράμετρο που καθορίζει τη θέση όπου προστίθεται το νέο στοιχείο.

Για να μάθετε περισσότερα, επισκεφθείτε το Java ArrayList add ().

Μπορούμε επίσης να προσθέσουμε στοιχεία μιας συλλογής σε μια λίστα πίνακα χρησιμοποιώντας τη μέθοδο Java ArrayList addAll ().

2. Πρόσβαση στα στοιχεία ArrayList

Για πρόσβαση σε ένα στοιχείο από τη λίστα πίνακα, χρησιμοποιούμε τη get()μέθοδο της ArrayListκλάσης. Για παράδειγμα,

 import java.util.ArrayList; class Main ( public static void main(String() args) ( ArrayList animals = new ArrayList(); // add elements in the arraylist animals.add("Cat"); animals.add("Dog"); animals.add("Cow"); System.out.println("ArrayList: " + animals); // get the element from the arraylist String str = animals.get(1); System.out.print("Element at index 1: " + str); ) )

Παραγωγή

 ArrayList: (Cat, Dog, Cow) Στοιχείο στο ευρετήριο 1: Dog

Στο παραπάνω παράδειγμα, χρησιμοποιήσαμε τη get()μέθοδο με την παράμετρο 1. Εδώ, η μέθοδος επιστρέφει το στοιχείο στο ευρετήριο 1 .

Για να μάθετε περισσότερα, επισκεφθείτε το Java ArrayList get ().

Μπορούμε επίσης να έχουν πρόσβαση σε στοιχεία του ArrayListχρησιμοποιώντας τη iterator()μέθοδο. Για να μάθετε περισσότερα, επισκεφθείτε το Java ArrayList iterator ().

3. Αλλαγή στοιχείων ArrayList

Για να αλλάξουμε το στοιχείο της λίστας πίνακα, χρησιμοποιούμε τη set()μέθοδο της ArrayListκλάσης. Για παράδειγμα,

 import java.util.ArrayList; class Main ( public static void main(String() args) ( ArrayList languages = new ArrayList(); // add elements in the array list languages.add("Java"); languages.add("Kotlin"); languages.add("C++"); System.out.println("ArrayList: " + languages); // change the element of the array list languages.set(2, "JavaScript"); System.out.println("Modified ArrayList: " + languages); ) )

Παραγωγή

 ArrayList: (Java, Kotlin, C ++) Τροποποιημένη ArrayList: (Java, Kotlin, JavaScript)

Στο παραπάνω παράδειγμα, δημιουργήσαμε ArrayListονομαστικές γλώσσες. Παρατηρήστε τη γραμμή,

 language.set(2, "JavaScript");

Εδώ, η set()μέθοδος αλλάζει το στοιχείο στο ευρετήριο 2 σε JavaScript.

To learn more, visit the Java ArrayList set().

4. Remove ArrayList Elements

To remove an element from the arraylist, we can use the remove() method of the ArrayList class. For example,

 import java.util.ArrayList; class Main ( public static void main(String() args) ( ArrayList animals = new ArrayList(); // add elements in the array list animals.add("Dog"); animals.add("Cat"); animals.add("Horse"); System.out.println("ArrayList: " + animals); // aemove element from index 2 String str = animals.remove(2); System.out.println("Updated ArrayList: " + animals); System.out.println("Removed Element: " + str); ) )

Output

 ArrayList: (Dog, Cat, Horse) Updated ArrayList: (Dog, Cat) Removed Element: Horse

Here, the remove() method takes the index number as the parameter. And, removes the element specified by the index number.

To learn more, visit the Java ArrayList remove().

We can also remove all the elements from the arraylist at once. To learn more, visit

  • Java ArrayList removeAll()
  • Java ArrayList clear()

Methods of ArrayList Class

In previous section, we have learned about the add(), get(), set(), and remove() method of the ArrayList class.

Besides those basic methods, here are some more ArrayList methods that are commonly used.

Methods Descriptions
size() Returns the length of the arraylist.
sort() Sort the arraylist elements.
clone() Creates a new arraylist with the same element, size, and capacity.
contains() Searches the arraylist for the specified element and returns a boolean result.
ensureCapacity() Specifies the total element the arraylist can contain.
isEmpty() Checks if the arraylist is empty.
indexOf() Searches a specified element in an arraylist and returns the index of the element.

If you want to learn about all the different methods of arraylist, visit Java ArrayList methods.

Iterate through an ArrayList

We can use the Java for-each loop to loop through each element of the arraylist. For example,

 import java.util.ArrayList; class Main ( public static void main(String() args) ( // creating an array list ArrayList animals = new ArrayList(); animals.add("Cow"); animals.add("Cat"); animals.add("Dog"); System.out.println("ArrayList: " + animals); // iterate using for-each loop System.out.println("Accessing individual elements: "); for (String language : animals) ( System.out.print(language); System.out.print(", "); ) ) )

Output

 ArrayList: (Cow, Cat, Dog) Accessing individual elements: Cow, Cat, Dog,

ArrayList To Array Conversion

We can convert the ArrayList into an array using the toArray() method. For example,

 import java.util.ArrayList; class Main ( public static void main(String() args) ( ArrayList languages = new ArrayList(); // add elements in the array list languages.add("Java"); languages.add("Python"); languages.add("C++"); System.out.println("ArrayList: " + languages); // create a new array of String type String() arr = new String(languages.size()); // convert ArrayList into an array languages.toArray(arr); System.out.print("Array: "); // access elements of the array for (String item : arr) ( System.out.print(item + ", "); ) ) )

Output

 ArrayList: (Java, Python, C++) Array: Java, Python, C++, 

In the above example, we have created an arraylist named languages. Notice the statement,

 languages.toArray(arr);

Here, the toArray() method converts the arraylist into an array and stores it in arr. To learn more, visit Java ArrayList toArray().

Java Array to ArrayList Conversion

We can also convert the array into an arraylist. For that, we use the asList() method of the Arrays class.

To use asList(), we must import the java.util.Arrays package first. For example,

 import java.util.ArrayList; import java.util.Arrays; class Main ( public static void main(String() args) ( // create an array of String type String() arr = ( "Java", "Python", "C++" ); System.out.print("Array: "); // print array for (String str : arr) ( System.out.print(str); System.out.print(" "); ) // create an ArrayList from an array ArrayList languages = new ArrayList(Arrays.asList(arr)); System.out.println("ArrayList: " + languages); ) )

Output

 Array: Java Python C++ ArrayList: (Java, Python, C++)

In the above program, we first created an array arr of the String type. Notice the expression,

 Arrays.asList(arr)

Εδώ, η asList()μέθοδος μετατρέπει τον πίνακα σε λίστα.

Σημείωση : Μπορούμε επίσης να χρησιμοποιήσουμε τη Arrays.asList()μέθοδο για να δημιουργήσουμε και να αρχικοποιήσουμε τη λίστα πίνακα σε μία γραμμή. Για παράδειγμα,

  // create and initialize arraylist ArrayList animals = new ArrayList(Arrays.asList("Cat", "Cow", "Dog"));

Λίστα μετατροπών σε συμβολοσειρά

Μπορούμε να χρησιμοποιήσουμε τη toString()μέθοδο της ArrayListκλάσης για να μετατρέψουμε μια λίστα σε μια συμβολοσειρά. Για παράδειγμα,

 import java.util.ArrayList; class Main ( public static void main(String() args) ( ArrayList languages = new ArrayList(); // add elements in the ArrayList languages.add("Java"); languages.add("Python"); languages.add("Kotlin"); System.out.println("ArrayList: " + languages); // convert ArrayList into a String String str = languages.toString(); System.out.println("String: " + str); ) )

Παραγωγή

 Λίστα Array: (Java, Python, Kotlin) Συμβολοσειρά: (Java, Python, Kotlin)

Εδώ, η toString()μέθοδος μετατρέπει ολόκληρη τη λίστα πίνακα σε μία συμβολοσειρά. Για να μάθετε περισσότερα, επισκεφθείτε το Java ArrayList toString ().

ενδιαφέροντα άρθρα...