Tôi đang tìm một lớp trong java có liên kết khóa-giá trị, nhưng không sử dụng băm. Dưới đây là những gì tôi hiện đang làm:Lớp Java triển khai Bản đồ và giữ thứ tự chèn?
- Thêm giá trị vào
Hashtable
. - Nhận trình lặp cho
Hashtable.entrySet()
. - Lặp lại tất cả các giá trị và:
- Nhận
Map.Entry
cho trình lặp. - Tạo đối tượng thuộc loại
Module
(một lớp tùy chỉnh) dựa trên giá trị. - Thêm lớp học vào JPanel.
- Nhận
- Hiển thị bảng điều khiển.
Vấn đề với điều này là tôi không có quyền kiểm soát thứ tự mà tôi lấy lại các giá trị, vì vậy tôi không thể hiển thị các giá trị theo thứ tự đã cho (không có thứ tự mã hóa cứng).
Tôi sẽ sử dụng một ArrayList
hoặc Vector
cho điều này, nhưng sau đó trong mã tôi cần phải lấy các đối tượng Module
cho một khóa nhất định, mà tôi không thể làm với một ArrayList
hoặc Vector
.
Có ai biết lớp Java miễn phí/mã nguồn mở sẽ thực hiện việc này hay cách để lấy giá trị từ số Hashtable
dựa trên thời điểm chúng được thêm?
Cảm ơn!
Bạn không cần phải sử dụng mục nhập/bản đồ.thử. bạn có thể lặp qua các khóa và giá trị bằng cách sử dụng hashtable.keys như một liệt kê hoặc bằng cách sử dụng hashtable.keyset.iterator. –
Tôi đã tự do thay đổi tiêu đề, vì không sử dụng băm không thực sự là vấn đề, nhưng vẫn giữ trật tự chèn. –