THƯ VIỆN CÁC COLLECTION TRONG JAVA VÀ ÁP DỤNG.
8.2 Giới thiệu Collection:
Định nghĩa: Một Collection đại diện cho 1 nhóm các đối tượng và được xác định như các phần tử của nó.
Collection interface được dùng để truyền tập các đối tượng mà yêu cầu tổng quát được đặt lên hàng đầu. Ví dụ, thông thường tất cả những cài đặt collection chung đều có 1 hàm khởi tạo sử dụng tham số kiểu Collection. Hàm này còn được gọi là hàm khởi tạo chuyển đổi (conversion constructor), giúp khởi tạo collection mới để có thể chứa được tất cả các phần tử có trong một Collection nào đó. Hay hiểu theo một cách khác, nó cho phép bạn chuyển kiểu Collection.
Giả sử, cho ví dụ, bạn có 1 Collection<String> c, có thể là List, Set hoặc 1 dạng nào đó của Collection. Khai báo này có thể tạo ra 1 ArrayList mới (1 cài đặt của interface List).
Khai báo: List<String> list = new ArrayList<String>(c);
Ví dụ về 1 số phương thức của Collection:
public interface Collection<E> extends Iterable<E> { // Thao tác cơ bản
int size();
boolean isEmpty();
boolean contains(Object element); // Tùy chọn
boolean add(E element); // Tùy chọn
boolean remove(Object element); Iterator<E> iterator();
// Phép toán số lượng lớn (Bulk operations) boolean containsAll(Collection<?> c); // Tùy chọn
boolean addAll(Collection<? extends E> c); // Tùy chọn
202 boolean removeAll(Collection<?> c); // Tùy chọn boolean retainAll(Collection<?> c); // Tùy chọn void clear(); // Thao tác trên mảng Object[] toArray(); <T> T[] toArray(T[] a); }
Qua những ví dụ trên, ta thấy được rằng Collection đã đại diện cho 1 nhóm các đối tượng như thế nào. Nó chứa những phương thức cho biết có bao nhiêu phần tử trong Collection (isEmpty, size), kiểm tra xem 1 phần tử nào đó có ở trong Collection hay không (contains), thêm, xóa phần tử (add, remove) và cung cấp vòng lặp trong toàn bộ Collection (iterator).
Phương thức add được định nghĩa một cách khá tổng quát. Phương thức sẽ bảo đảm rằng Collection sẽ chứa phần tử thêm vào sau khi lời gọi hoàn tất, và trả về true nếu Collection thay đổi theo lời gọi. Tương tự, phương thức remove được thiết kế để xóa một thể hiện của phần tử nhất định khỏi Collection, giả định rằng Collection có chứa phần tử, thì phương thức trả về true nếu Collection thay đổi theo lời gọi.