Trong bài viết Loại bỏ các phần tử trùng trong một ArrayList , tôi đã giới thiệu với các bạn các cách để loại bỏ phần tử trùng trong một ArrayList với Java <= 7. Trong bài này, tôi sẽ giới thiệu với các bạn một số cách khác với sự hỗ trợ của các tính năng […]
Chuyển đổi từ HashMap sang ArrayList
HashMap và ArrayList là hai cấu trúc dữ liệu được sử dụng nhiều nhất trong java. Cả hai lớp kế thừa từ các hệ phân cấp khác nhau. HashMap được kế thừa từ giao diện Map đại diện cho dữ liệu ở dạng các cặp khóa-giá trị (key-value). ArrayList được kế thừa từ giao diện […]
Loại bỏ các phần tử trùng trong một ArrayList như thế nào?
ArrayList là một trong những Collection được sử dụng nhiều nhất trong java. Nó cung cấp cho sự linh hoạt của việc thêm nhiều phần tử null, phần tử trùng lặp và cũng duy trì thứ tự chèn của các phần tử. Đôi khi, bạn gặp yêu cầu mà bạn phải loại bỏ các phần […]
Sao chép các phần tử của một mảng sang mảng khác như thế nào?
Chúng ta hãy xem xét chương trình sau đây: Trong ví dụ trên, chúng ta đang khai báo một mảng kiểu int. Chúng ta sao chép mảng đó sang mảng khác kiểu int. Bạn có thể nhận thấy rằng, việc thay đổi giá trị của một mảng sẽ được phản ánh trong một mảng gốc […]
HashSet trong Java hoạt động như thế nào?
Trong bài HashSet trong Java chúng ta đã tìm hiểu về đặc điểm của HashSet, các phương thức và ví dụ minh họa trong việc sử dụng HashSet trong Java. Trong bài này, chúng ta sẽ cùng tìm về cấu trúc dữ liệu lưu trữ các phần tử, cách thức hoạt động bên trong của […]
LinkedHashSet trong Java hoạt động như thế nào?
Như chúng ta đã biết, LinkedHashSet là một phiên bản mở rộng của HashSet. HashSet không đảm bảo thứ tự sắp xếp của các phần tử. Trong khi đó, LinkedHashSet duy trì thứ tự chèn phần tử. HashSet sử dụng đối tượng HashMap bên trong để lưu trữ các phần tử của nó, còn LinkedHashSet sử dụng đối […]
HashMap trong Java hoạt động như thế nào?
Cấu trúc dữ liệu bên trong HashMap HashMap lưu trữ dữ liệu ở dạng các cặp key-value (khóa-giá trị). Mỗi cặp key-value được lưu trữ trong một đối tượng của lớp Entry<K, V>. Bên trong class này có bốn trường: key (khóa), value (giá trị), next (phần tử kế tiếp) và hash (giá trị băm). […]