Trong bài viết này, chúng ta sẽ tìm hiểu sự khác biệt giữa HashMap và LinkedHashMap trong Java.
HashMap
- Thứ tự chèn (insertion order) KHÔNG được bảo toàn
- Sử dụng HashTable để lưu map
- Kế thừa AbstractMap
- Implements Map interface
- Ra mắt JDK 2.0
- Overhead thấp hơn
LinkedHashMap
- Thứ tự chèn (insertion order) ĐƯỢC bảo toàn (đây là khác biệt chính)
- Sử dụng HashTable VÀ Linked List để lưu map
- Kế thừa HashMap
- Implements Map interface
- Ra mắt JDK 4.0
- Overhead cao hơn
- Vì phải duy trì thứ tự các entry trong map