Trong hướng dẫn này, chúng ta sẽ tìm hiểu về lớp ArrayList trong Java. Chúng ta sẽ tìm hiểu về các hoạt động và phương thức khác nhau của danh sách mảng với sự trợ giúp của các ví dụ.
Các ArrayList
lớp học của khuôn khổ bộ sưu tập Java cung cấp các chức năng của resizable-mảng .
Nó thực hiện List
giao diện.Triển khai Java ArrayList
Mảng Java ArrayList
Trong Java, chúng ta cần khai báo kích thước của một mảng trước khi có thể sử dụng nó. Khi kích thước của một mảng được khai báo, rất khó để thay đổi nó.
Để xử lý vấn đề này, chúng ta có thể sử dụng ArrayList
lớp. Nó cho phép chúng ta tạo các mảng có thể thay đổi kích thước.
Không giống như mảng, danh sách mảng có thể tự động điều chỉnh dung lượng của nó khi chúng ta thêm hoặc bớt các phần tử khỏi nó. Do đó, danh sách mảng còn được gọi là mảng động .
Tạo ArrayList
Trước khi sử dụng ArrayList
, chúng ta cần nhập java.util.ArrayList
gói trước. Đây là cách chúng ta có thể tạo danh sách mảng trong Java:
ArrayList<Type> arrayList= new ArrayList<>();
Ở đây, Type cho biết kiểu của một danh sách mảng. Ví dụ,
// create Integer type arraylist
ArrayList<Integer> arrayList = new ArrayList<>();
// create String type arraylist
ArrayList<String> arrayList = new ArrayList<>();
Trong chương trình trên, chúng ta đã sử dụng hàm Integer
not int. Đó là bởi vì chúng ta không thể sử dụng các kiểu nguyên thủy trong khi tạo một danh sách mảng. Thay vào đó, chúng ta phải sử dụng các lớp trình bao bọc tương ứng.
Đây, Integer
là lớp trình bao bọc tương ứng của int
. Để tìm hiểu thêm, hãy truy cập lớp trình bao bọc Java .
Ví dụ: Tạo ArrayList trong Java
import java.util.ArrayList;
class Main {
public static void main(String[] args){
// create ArrayList
ArrayList<String> languages = new ArrayList<>();
// Add elements to ArrayList
languages.add("Java");
languages.add("Python");
languages.add("Swift");
System.out.println("ArrayList: " + languages);
}
}
Đầu ra
ArrayList: [Java, Python, Swift]
Trong ví dụ trên, chúng tôi đã tạo một ngôn ngữArrayList
được đặt tên .
Ở đây, chúng ta đã sử dụng add()
phương thức để thêm các phần tử vào danh sách mảng. Chúng ta sẽ tìm hiểu thêm về add()
phương pháp sau trong hướng dẫn này.
Lưu ý : Chúng ta cũng có thể tạo một danh sách mảng bằng List
giao diện. Đó là bởi vì ArrayList
lớp thực thi List
giao diện.
List<String> list = new ArrayList<>();
Các thao tác cơ bản trên ArrayList
Các ArrayList
lớp học cung cấp phương pháp khác nhau để thực hiện các hoạt động khác nhau trên ArrayLists. Chúng ta sẽ xem xét một số thao tác trong danh sách mảng thường được sử dụng trong hướng dẫn này:
- Add elements
- Access elements
- Change elements
- Remove elements
1. Thêm các phần tử vào ArrayList
Để thêm một phần tử vào danh sách mảng, chúng ta sử dụng add()
phương thức của ArrayList
lớp. Ví dụ,
import java.util.ArrayList;
class Main {
public static void main(String[] args){
// create ArrayList
ArrayList<String> 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);
}
}
Đầu ra
ArrayList: [Java, C, Python] Updated ArrayList: [Java, JavaScript, C, Python]
Trong ví dụ trên, chúng tôi đã tạo một ngôn ngữArrayList
được đặt tên . Ở đây, chúng tôi đã sử dụng phương pháp để thêm các phần tử vào ngôn ngữ .add()
Lưu ý tuyên bố,
languages.add(1, "JavaScript");
Ở đây, chúng tôi đã sử dụng tham số số chỉ mục . Nó là một tham số tùy chọn chỉ định vị trí mà phần tử mới được thêm vào.
Để tìm hiểu thêm, hãy truy cập vào Java ArrayList add () .
Chúng ta cũng có thể thêm các phần tử của một tập hợp vào một danh sách mảng bằng cách sử dụng phương thức addAll () của Java ArrayList .
2. Truy cập các phần tử ArrayList
Để truy cập một phần tử từ danh sách mảng, chúng ta sử dụng get()
phương thức của ArrayList
lớp. Ví dụ,
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList<String> 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);
}
}
Đầu ra
ArrayList: [Cat, Dog, Cow] Element at index 1: Dog
Trong ví dụ trên, chúng ta đã sử dụng get()
phương thức với tham số 1 . Ở đây, phương thức trả về phần tử ở chỉ mục 1 .
Để tìm hiểu thêm, hãy truy cập Java ArrayList get () .
Chúng tôi cũng có thể truy cập vào các yếu tố của ArrayList
việc sử dụng iterator()
phương pháp. Để tìm hiểu thêm, hãy truy cập Java ArrayList iterator () .
3. Thay đổi các phần tử ArrayList
Để thay đổi phần tử của danh sách mảng, chúng ta sử dụng set()
phương thức của ArrayList
lớp. Ví dụ,
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList<String> 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);
}
}
Đầu ra
ArrayList: [Java, Kotlin, C++] Modified ArrayList: [Java, Kotlin, JavaScript]
Trong ví dụ trên, chúng tôi đã tạo một ngôn ngữArrayList
được đặt tên . Lưu ý dòng,
language.set(2, "JavaScript");
Ở đây, set()
phương thức thay đổi phần tử ở chỉ mục 2 thành JavaScript .
Để tìm hiểu thêm, hãy truy cập tập hợp Java ArrayList () .
4. Loại bỏ các phần tử ArrayList
Để xóa một phần tử khỏi danh sách mảng, chúng ta có thể sử dụng remove()
phương thức của ArrayList
lớp. Ví dụ,
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList<String> 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);
}
}
Đầu ra
ArrayList: [Dog, Cat, Horse] Updated ArrayList: [Dog, Cat] Removed Element: Horse
Ở đây, remove()
phương thức lấy số chỉ mục làm tham số. Và, loại bỏ phần tử được chỉ định bởi số chỉ mục .
Để tìm hiểu thêm, hãy truy cập Java ArrayList remove () .
Chúng tôi cũng có thể xóa tất cả các phần tử khỏi danh sách mảng cùng một lúc. Để tìm hiểu thêm, hãy truy cập
- Java ArrayList removeAll()
- Java ArrayList clear()
Phương thức của lớp ArrayList
Trong phần trước, chúng ta đã học về add()
, get()
, set()
, và remove()
phương pháp của ArrayList
lớp.
Bên cạnh những phương pháp cơ bản, đây là một số ArrayList
phương pháp khác thường được sử dụng.
Methods | Decfscriptions |
---|---|
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. |
Nếu bạn muốn tìm hiểu về tất cả các phương thức khác nhau của danh sách mảng , hãy truy cập các phương thức Java ArrayList .
Lặp lại qua ArrayList
Chúng ta có thể sử dụng Java for-each loop để lặp qua từng phần tử của danh sách mảng. Ví dụ,
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
// creating an array list
ArrayList<String> 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(", ");
}
}
}
Đầu ra
ArrayList: [Cow, Cat, Dog] Accessing individual elements: Cow, Cat, Dog,
ArrayList sang Array Chuyển đổi
Chúng ta có thể chuyển đổi ArrayList
thành một mảng bằng toArray()
phương thức này. Ví dụ,
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList<String> 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 + ", ");
}
}
}
Đầu ra
ArrayList: [Java, Python, C++] Array: Java, Python, C++,
Trong ví dụ trên, chúng ta đã tạo một danh sách mảng có tên các ngôn ngữ . Lưu ý tuyên bố,
languages.toArray(arr);
Ở đây, toArray()
phương thức chuyển đổi danh sách mảng thành một mảng và lưu trữ nó trong arr . Để tìm hiểu thêm, hãy truy cập Java ArrayList toArray () .
Chuyển đổi mảng Java sang ArrayList
Chúng ta cũng có thể chuyển mảng thành một danh sách mảng. Đối với điều đó, chúng tôi sử dụng asList()
phương thức của Arrays
lớp.
Để sử dụng asList()
, chúng ta phải nhập java.util.Arrays
gói trước. Ví dụ,
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<String> languages = new ArrayList<>(Arrays.asList(arr));
System.out.println("\nArrayList: " + languages);
}
}
Đầu ra
Array: Java Python C++ ArrayList: [Java, Python, C++]
Trong chương trình trên, đầu tiên chúng ta tạo một mảng arr
của các String
loại. Lưu ý biểu thức,
Arrays.asList(arr)
Ở đây, asList()
phương thức chuyển đổi mảng thành một danh sách mảng.
Lưu ý : Chúng ta cũng có thể sử dụng Arrays.asList()
phương thức này để tạo và khởi tạo danh sách mảng trong một dòng. Ví dụ,
// create and initialize arraylist
ArrayList<String> animals = new ArrayList<>(Arrays.asList("Cat", "Cow", "Dog"));
ArrayList to String Conversion
Chúng ta có thể sử dụng toString()
phương thức của ArrayList
lớp để chuyển một danh sách mảng thành một chuỗi. Ví dụ,
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList<String> 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);
}
}
Đầu ra
ArrayList: [Java, Python, Kotlin] String: [Java, Python, Kotlin]
Ở đây, toString()
phương thức chuyển đổi toàn bộ danh sách mảng thành một chuỗi duy nhất. Để tìm hiểu thêm, hãy truy cập Java ArrayList toString () .