Computer >> Máy Tính >  >> Lập trình >> Java

Sự khác biệt giữa ArrayList và Vector trong Java


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