Chuỗi if-else bậc giá viết thành một dòng: TreeMap trả lời được câu hỏi HashMap chịu thua
Cây đỏ đen cho phép hỏi những câu HashMap không trả lời được — khoá lớn nhất không vượt quá x, mọi phần tử trong khoảng, và các khung nhìn sống.
Cây đỏ đen cho phép hỏi những câu HashMap không trả lời được — khoá lớn nhất không vượt quá x, mọi phần tử trong khoảng, và các khung nhìn sống.
Thứ tự chèn khác thứ tự truy cập, tham số accessOrder biến LinkedHashMap thành LRU tự động, removeEldestEntry là phương thức sinh ra để bạn ghi đè, và vì sao đây là chỗ hiếm hoi kế thừa lại đúng.
Dùng phản chiếu soi thẳng vào bảng băm JDK 21 để thấy hệ số tải 0,75 hoạt động, va chạm dồn thành chuỗi, và luật hai điều kiện — 8 phần tử VÀ bảng ≥64 ngăn — để một ngăn chuyển sang cây đỏ đen.
Bốn phép đo JMH trên 100.000 phần tử: truy cập ngẫu nhiên, duyệt, thêm cuối, thêm đầu. Chỗ duy nhất LinkedList thắng thì ArrayDeque còn thắng hơn — và bài học lớn hơn là big-O không cho biết cái nào nhanh hơn ở kích thước thật của bạn.
Cây giao diện Collections Framework, bảng đối chiếu thứ tự duyệt và khả năng chứa null đo bằng mã chạy được, giao diện Sequenced mới của Java 21, và một bảng chọn nhanh đáng dán cạnh màn hình.
Vì sao final chỉ khoá con trỏ chứ không khoá nội dung, sao chép phòng vệ ở cả cửa vào lẫn cửa ra và phải làm trước khi kiểm tra, và vì sao chọn kiểu bất biến là cách chữa tận gốc.