Trong bài đăng này, chúng ta sẽ hiểu sự khác biệt giữa ArrayList và Vector trong Java.
ArrayList
-
Nó không được đồng bộ hóa.
-
Nếu số phần tử vượt quá dung lượng của ArrayList, nó sẽ tăng kích thước mảng hiện tại lên 50 phần trăm.
-
Nó không an toàn theo chuỗi.
-
Nó đã được giới thiệu trong JDK 1.2.
-
nó chỉ có thể sử dụng trình vòng lặp để duyệt qua.
-
Vì nó không được đồng bộ hóa nên rất nhanh.
-
Nó sử dụng giao diện Iterator để duyệt qua các phần tử.
Ví dụ
ArrayList<T> al = new ArrayList<T>();
Véc tơ
-
Nó được đồng bộ hóa.
-
Nó là một chuỗi an toàn.
-
Nó là một lớp kế thừa.
-
Nó chậm, vì nó được đồng bộ hóa.
-
Nếu số phần tử vượt quá dung lượng của Vectơ, nó sẽ tăng kích thước mảng hiện tại lên 100 phần trăm.
-
Nó có thể sử dụng trình điều tra và trình lặp để duyệt qua.
-
Nó được ưu tiên hơn ArrayList.
-
Nó cung cấp một môi trường đa luồng.
-
Nó giữ các luồng khác ở trạng thái chạy được hoặc không chạy được, cho đến khi luồng hiện tại giải phóng khóa trên đối tượng cụ thể.
-
Nó có thể sử dụng giao diện ‘Iterator’ hoặc giao diện Enumeration để xem qua các phần tử.
Ví dụ
Vector<T> v = new Vector<T>();