Vector trong Java là một lớp của thư viện java.util. Nó là một thực thể của List interface và cung cấp các chức năng tương tự như ArrayList, nhưng có thể sử dụng được trong môi trường đa luồng (multi-thread).
Vector cung cấp các phương thức thêm, xóa, tìm kiếm và sửa phần tử, tương tự như ArrayList. Nó cũng cung cấp các phương thức để thay đổi kích thước của Vector.
Các bài viết liên quan:
Ví dụ:
Vector<Integer> vector = new Vector<>(); vector.add(3); vector.add(1); vector.add(2); vector.add(5); vector.add(4); System.out.println("Vector: " + vector); // Output: Vector: [3, 1, 2, 5, 4] vector.remove(2); // remove the element at index 2 vector.set(1, 6); // set the element at index 1 to 6 vector.get(3); // returns 5 vector.size(); // returns 4
Vector có thể sử dụng trong các trường hợp cần quản lý danh sách các phần tử và cần sử dụng được trong môi trường đa luồng. Nó cung cấp các phương thức đồng bộ (synchronized) để đảm bảo tính an toàn trong việc truy cập và thay đổi các phần tử của Vector trong môi trường đa luồng. Nó có thể sử dụng nếu bạn cần quản lý danh sách các phần tử mà cần đảm bảo tính an toàn trong việc truy cập và thay đổi.
Nó cũng có thể sử dụng trong trường hợp cần quản lý danh sách các phần tử của các đối tượng cần quản lý trong môi trường đa luồng. nhưng với sự phát triển của các collection của java như ConcurrentHashMap, ConcurrentLinkedQueue và CopyOnWriteArrayList thì Vector không được sử dụng nhiều.
Một số ví dụ sử dụng vector trong java
Ví dụ 1: Tạo một Vector và thêm một số phần tử vào đó
Vector<Integer> vector = new Vector<>(); vector.add(3); vector.add(1); vector.add(2); vector.add(5); vector.add(4); System.out.println("Vector: " + vector); // Output: Vector: [3, 1, 2, 5, 4]
Ví dụ 2: Xóa và thay đổi các phần tử trong Vector
Vector<Integer> vector = new Vector<>(); vector.add(3); vector.add(1); vector.add(2); vector.add(5); vector.add(4); vector.remove(2); // remove the element at index 2 vector.set(1, 6); // set the element at index 1 to 6 System.out.println("Vector: " + vector); // Output: Vector: [3, 6, 5, 4]
Ví dụ 3: Sử dụng các phương thức đồng bộ của Vector trong môi trường đa luồng
Vector<Integer> vector = new Vector<>(); Runnable task1 = () -> { vector.add(3); vector.add(1); vector.add(2); }; Runnable task2 = () -> { vector.add(5); vector.add(4); vector.remove(1); }; Thread thread1 = new Thread(task1); Thread thread2 = new Thread(task2); thread1.start(); thread2.start(); try { thread1.join(); thread2.join(); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("Vector: " + vector); // Output: Vector: [3, 2, 5, 4]
Các ví dụ trên chỉ là một số ví dụ đơn giản về cách sử dụng Vector trong Java, có rất nhiều phương thức khác có thể sử dụng khi làm việc với Vector, chẳng hạn như:
- vector.size() để lấy số lượng phần tử trong Vector
- vector.clear() để xóa tất cả các phần tử trong Vector
- vector.isEmpty() để kiểm tra xem Vector có rỗng hay không
- vector.toArray() để chuyển Vector sang mảng
Vector là một lựa chọn tốt trong trường hợp cần quản lý danh sách các phần tử và cần sử dụng được trong môi trường đa luồng. Tuy nhiên, nó có thể chậm hơn so với các collection khác như ArrayList hoặc LinkedList vì các phương thức của nó đã được đồng bộ.