Những điểm chính cần nắm
Collection là gì?
Collection là một root interface trong Java Collection Framework, được khai báo trong gói java.util, đại diện cho một tập hợp các phần tử riêng lẻ. Interface này định nghĩa các phương thức cơ bản để thao tác với dữ liệu như: add, remove, clear, size, contains,…
Ba interface quan trọng kế thừa trực tiếp từ Collection gồm List, Queue và Set. Mỗi loại có cách tổ chức dữ liệu và quy tắc sắp xếp riêng, phục vụ cho những mục đích sử dụng khác nhau.

Phân biệt Collection và Collections
Trong Java, hai khái niệm Collection và Collections rất dễ gây nhầm lẫn, dù chức năng hoàn toàn khác nhau:
-
Collections: Là một lớp tiện ích (utility class) cung cấp các phương thức tĩnh để xử lý các đối tượng kiểu Collection như sắp xếp, tìm kiếm, đảo thứ tự,…
Ví dụ tạo một Collection thông qua ArrayList:
So sánh Collection và Collections
|
Tiêu chí |
Collection |
Collections |
|
Loại |
Interface |
Utility class |
|
Gói |
java.util |
java.util |
|
Chức năng |
Định nghĩa cấu trúc và phương thức thao tác dữ liệu |
Cung cấp phương thức tĩnh để xử lý Collection |
|
Khởi tạo trực tiếp |
Không |
Không |
|
Ví dụ |
List, Set, Queue |
Collections.sort(), Collections.shuffle() |
Tóm tắt nhanh
Java Collection Framework là gì?
Java Collection Framework (JCF) là một thư viện cốt lõi cung cấp hệ thống interface, class và thuật toán giúp thao tác với dữ liệu tập hợp một cách hiệu quả. Nhờ JCF, lập trình viên không cần tự xây dựng lại các cấu trúc dữ liệu cơ bản mà có thể sử dụng ngay những thành phần đã được tối ưu sẵn.

Thành phần chính của Java Collection Framework
-
Class: Triển khai interface, ví dụ ArrayList, LinkedList, HashMap,…
Lợi ích nổi bật
Hệ thống phân cấp của Java Collection Framework
Java Collection Framework được chia thành hai nhánh lớn:
-
Collection: Đại diện cho tập hợp các phần tử đơn lẻ, bao gồm List, Set và Queue.
-
Map: Đại diện cho tập hợp các cặp key – value, trong đó mỗi key ánh xạ tới một value duy nhất.

Các lớp triển khai phổ biến
Ba nhóm chính trong Collection
1. List (Danh sách)
List cho phép lưu trữ nhiều phần tử có thứ tự và cho phép trùng lặp. Các phần tử có thể được truy cập thông qua chỉ số (index).
Các class triển khai phổ biến:

2. Queue (Hàng đợi)
Queue hoạt động theo nguyên tắc FIFO (First In – First Out): phần tử vào trước sẽ được xử lý trước. Java còn hỗ trợ Deque, cho phép thêm – lấy phần tử ở cả hai đầu hàng đợi.
Các class phổ biến:
3. Set
Set chỉ lưu trữ giá trị duy nhất, không cho phép trùng lặp và không đảm bảo thứ tự.
Một số class thường dùng:
Các thuật toán cơ bản trong Collections
Các thuật toán trong lớp java.util.Collections giúp thao tác dữ liệu nhanh chóng và tiện lợi.
Phương thức sắp xếp
Phương thức tìm kiếm
Phương thức xóa