Danh sách mảng
Không giống như các mảng thông thường,   ArrayList từ gói java.util là một mảng tự động mở rộng. Khi bạn tạo một đối tượng thuộc loại ArrayList, bạn không cần chỉ định kích thước của nó. Ví dụ, Danh sách ArrayList = new ArrayList();
Ưu điểm ArrayList so với mảng thông thường:
  • truy cập nhanh vào các phần tử theo chỉ mục trong thời gian cố định O(1);
  • truy cập các phần tử theo giá trị trong thời gian tuyến tính O(n);
  • cho phép bạn lưu trữ bất kỳ giá trị nào, kể cả null.

Điểm yếu ArrayList:
Chèn/xóa phần tử  gây ra việc ghi đè tất cả các phần tử được đặt "sang bên phải" trong danh sách, một vị trí ở bên trái, nghĩa là, nó hoạt động trong thời gian tuyến tính O(n);

Hãy nhớ rằng danh sách chỉ có thể chứa đối tượng, vì vậy nếu bạn muốn lưu trữ số, hãy sử dụng Số nguyên thay vì int. Số nguyên là tên của một lớp và một đối tượng của lớp này có thể chứa một giá trị số nguyên. Bạn có thể đọc thêm về lớp và đối tượng tại đây: giới thiệu về lập trình hướng đối tượng.

Có hai tùy chọn để thêm phần tử vào ArrayList:
add(value);  - thêm một giá trị vào cuối ArrayList
add(index, value); - thêm giá trị vào đúng vị trí theo chỉ mục.

Ví dụ:
arr.thêm(10);(10);
mảng.thêm(5,10); 
 

Để lấy giá trị của một phần tử từ ArrayList, hãy sử dụng phương thức  get(index)
Ví dụ:
int a = mảng. lấy(0);

Để tìm ra số lượng phần tử trong một mảng, bạn có thể sử dụng phương thức size()
Ví dụ:
int đếm = mảng. kích thước();

Để thay đổi giá trị theo chỉ mục trong danh sách, hãy sử dụng name.set(index,value); 
 
mảng.đặt(0,10); 

Có hai tùy chọn để thêm phần tử vào ArrayList:
add(value);  - thêm một giá trị vào cuối ArrayList
add(index, value); - thêm giá trị vào đúng vị trí theo chỉ mục.

Ví dụ:
arr.thêm(10);(10);
mảng.thêm(5,10); 
 

Bạn có thể xóa các phần tử trong ArrayList bằng phương thức remove theo hai cách:
  • xóa theo chỉ mục (chỉ mục)
  • xóa theo giá trị(giá trị)
Ví dụ:
 
mảng.xóa(0);(0); span> //xóa phần tử đầu tiên
mảng.xóa(< strong>new Integer(10)); //xóa phần tử có giá trị 10

Danh sách mảng đảo ngược
Giao diện Bộ sưu tập  cũng cung cấp các phương thức cho các thao tác hàng loạt hoạt động trên toàn bộ bộ sưu tập:
containsAll - trả về giá trị boolean true nếu bộ sưu tập này chứa tất cả các phần tử trong bộ sưu tập được gọi, nếu không nó trả về false.
addAll - thêm tất cả các phần tử đã chỉ định vào bộ sưu tập đã chỉ định. Các phần tử cần thêm có thể được chỉ định riêng lẻ hoặc dưới dạng một mảng.
removeAll -  được sử dụng để xóa tất cả các phần tử khỏi danh sách có trong bộ sưu tập đã chỉ định.
xóa - xóa tất cả các thành phần
reverse - đảo ngược mảng
v.v.

Ví dụ
Sử dụng removeAll. ArrayList<Số nguyên> first = new ArrayList<Integer>(); đầu tiên.add(1); đầu tiên.add(2); đầu tiên.add(3); ArrayList<Số nguyên> second = new ArrayList<Integer>(); giây.add(1); giây.add(2); // loại bỏ tất cả các phần tử từ danh sách thứ hai, // nếu chúng tồn tại trong danh sách đầu tiên second.removeAll(first);