Sự khác biệt chính: Trong khoa học máy tính, hashTable hoặc hashMap đề cập đến cấu trúc dữ liệu liên kết các khóa (tên) với các giá trị (thuộc tính). Trong Java, có một số khác biệt quan trọng giữa hai loại như: HashTable được đồng bộ hóa và HashMap không được đồng bộ hóa. HashTable không cho phép các khóa null. Tuy nhiên, HashMap cho phép một khóa null duy nhất và bất kỳ số lượng giá trị null nào.
HashMap và hashTable là các cấu trúc dữ liệu là một phần của bộ sưu tập Java. Họ sử dụng các cặp khóa-giá trị để lưu trữ các đối tượng. Cả hai đều có chung một số điểm tương đồng, chẳng hạn như cả hai đều thực hiện giao diện java.util.Map và cả hai đều hoạt động theo nguyên tắc băm. Tuy nhiên, khi chúng ta đề cập đến chúng trong ngữ cảnh với ngôn ngữ lập trình Java, có rất nhiều sự khác biệt giữa hai ngôn ngữ này.
Một hashTable được sử dụng để lưu trữ và truy xuất giá trị bằng cách sử dụng khóa. Đối với mục đích này, chìa khóa phải là duy nhất. Bảng được sử dụng để lưu trữ các cặp khóa và giá trị được gọi là bảng băm. Một bảng băm được hình thành bằng cách sử dụng một thuật toán băm các phím. Hàm băm này được sử dụng để gán số cho dữ liệu đầu vào và sau đó dữ liệu được lưu trữ dưới dạng chỉ mục mảng tương ứng với số được tính hoặc đánh giá.
So sánh giữa HashMap và HashTable:
Bản đồ băm | HashTable | |
Đồng bộ hóa | Nó không đồng bộ | Nó được đồng bộ hóa (chủ đề an toàn) |
Giá trị Null | Nó cho phép các giá trị null là khóa và giá trị | Nó không cho phép null |
Giới thiệu trong java | Phiên bản Java 1.2 | Phiên bản đầu tiên của bộ phát triển java |
Hiệu suất | Tương đối tốt hơn | Tương đối nghèo |
Mở rộng | Nó mở rộng lớp AbstractMap | Nó mở rộng lớp Từ điển khá cũ |
Lặp lại các phím | Lặp đi lặp lại được sử dụng để lặp lại các phím | Giao diện liệt kê được sử dụng để lặp lại các phím |
Các ứng dụng | Tốt hơn cho các ứng dụng không luồng | Nói chung, an toàn cho các ứng dụng đa luồng |
Tuần tự hóa | Không được đăng | Nối tiếp |
Thay thế | Người ta có thể sử dụng hashMap đồng thời cho môi trường đa luồng | Không có sự thay thế như vậy |