Java ArrayList (Dengan Contoh)

Dalam tutorial ini, kita akan belajar mengenai kelas ArrayList di Java. Kami akan belajar mengenai pelbagai operasi dan kaedah senarai susunan dengan bantuan contoh.

The ArrayListkelas rangka koleksi Java menyediakan fungsi resizable-tatasusunan .

Ia melaksanakan Listantara muka.

Pelaksanaan Java ArrayList

Java ArrayList Vs Array

Di Jawa, kita perlu menyatakan ukuran array sebelum kita dapat menggunakannya. Setelah ukuran array dinyatakan, sukar untuk mengubahnya.

Untuk mengatasi masalah ini, kita boleh menggunakan ArrayListkelas. Ini membolehkan kita membuat susunan yang boleh diubah saiznya.

Tidak seperti tatasusunan, senarai tatasusunan dapat menyesuaikan kapasitinya secara automatik apabila kita menambah atau mengeluarkan unsur darinya. Oleh itu, senarai tatasusunan juga dikenali sebagai tatasusunan dinamik .

Membuat ArrayList

Sebelum menggunakan ArrayList, kita perlu mengimport java.util.ArrayListpakej terlebih dahulu. Inilah cara kami membuat senarai array di Java:

 ArrayList arrayList= new ArrayList();

Di sini, Jenis menunjukkan jenis senarai tatasusunan. Sebagai contoh,

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

Dalam program di atas, kami telah menggunakan Integernot int. Ini kerana kita tidak dapat menggunakan jenis primitif semasa membuat senarai array. Sebaliknya, kita harus menggunakan kelas pembungkus yang sesuai.

Berikut Integeradalah kelas pembungkus yang sesuai untuk int. Untuk mengetahui lebih lanjut, lawati kelas pembungkus Java.

Contoh: Buat ArrayList di 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); ) )

Pengeluaran

 ArrayList: (Java, Python, Swift)

Dalam contoh di atas, kami telah membuat ArrayListbahasa yang dinamakan.

Di sini, kami telah menggunakan add()kaedah untuk menambahkan elemen ke dalam senarai tatasusunan. Kami akan mengetahui lebih lanjut mengenai add()kaedah ini dalam tutorial ini.

Catatan : Kami juga dapat membuat senarai array menggunakan Listantara muka. Ini kerana ArrayListkelas menggunakan Listantara muka.

 List list = new ArrayList();

Operasi Asas pada ArrayList

The ArrayListkelas menyediakan pelbagai kaedah untuk melaksanakan operasi yang berbeza pada arraylists. Kami akan melihat beberapa operasi senarai susunan yang biasa digunakan dalam tutorial ini:

  • Tambahkan unsur
  • Unsur akses
  • Tukar elemen
  • Keluarkan unsur

1. Tambahkan Elemen ke ArrayList

Untuk menambahkan satu elemen ke senarai tatasusunan, kami menggunakan add()kaedah ArrayListkelas. Sebagai contoh,

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

Pengeluaran

 ArrayList: (Java, C, Python) ArrayList yang dikemas kini: (Java, JavaScript, C, Python)

Dalam contoh di atas, kami telah membuat ArrayListbahasa yang dinamakan. Di sini, kami telah menggunakan add()kaedah untuk menambahkan unsur ke bahasa.

Perhatikan kenyataannya,

 languages.add(1, "JavaScript");

Di sini, kami telah menggunakan parameter nombor indeks . Ini adalah parameter pilihan yang menentukan kedudukan di mana elemen baru ditambahkan.

Untuk mengetahui lebih lanjut, lawati Java ArrayList add ().

Kita juga dapat menambahkan elemen koleksi ke daftar array menggunakan kaedah Java ArrayList addAll ().

2. Akses Elemen ArrayList

Untuk mengakses elemen dari senarai tatasusunan, kami menggunakan get()kaedah ArrayListkelas. Sebagai contoh,

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

Pengeluaran

 ArrayList: (Kucing, Anjing, Lembu) Elemen pada indeks 1: Anjing

Dalam contoh di atas, kami telah menggunakan get()kaedah dengan parameter 1. Di sini, kaedah mengembalikan elemen pada indeks 1 .

Untuk mengetahui lebih lanjut, lawati Java ArrayList get ().

Kita juga boleh mengakses elemen ArrayListpenggunaan iterator()kaedah. Untuk mengetahui lebih lanjut, lawati iterator Java ArrayList ().

3. Ubah Elemen ArrayList

Untuk menukar elemen senarai susunan, kami menggunakan set()kaedah ArrayListkelas. Sebagai contoh,

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

Pengeluaran

 ArrayList: (Java, Kotlin, C ++) ArrayList yang diubah: (Java, Kotlin, JavaScript)

Dalam contoh di atas, kami telah membuat ArrayListbahasa yang dinamakan. Perhatikan garis,

 language.set(2, "JavaScript");

Di sini, set()kaedah mengubah elemen pada indeks 2 menjadi 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)

Di sini, asList()kaedah menukar tatasusunan menjadi senarai tatasusunan.

Catatan : Kami juga dapat menggunakan Arrays.asList()kaedah untuk membuat dan menginisialisasi array array dalam satu baris. Sebagai contoh,

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

ArrayList to String Penukaran

Kita boleh menggunakan toString()kaedah ArrayListkelas untuk menukar senarai susunan menjadi rentetan. Sebagai contoh,

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

Pengeluaran

 ArrayList: (Java, Python, Kotlin) Rentetan: (Java, Python, Kotlin)

Di sini, toString()kaedah menukar keseluruhan array array menjadi satu rentetan. Untuk mengetahui lebih lanjut, lawati Java ArrayList toString ().

Artikel menarik...