0
我有一个LinkedHashMap,我想按字母顺序排列它的键(它们是字符串)。但是,它不适用于Collections.sort()方法,因为它不会采用LinkedHashMap本身或LinkedHashMap的密钥集。在LinkedHashMap中按字母顺序排序键
我唯一的选择是在填写LinkedHashMap时手动排序它们,但在这之前我想知道是否有人知道更好的方法。
我有一个LinkedHashMap,我想按字母顺序排列它的键(它们是字符串)。但是,它不适用于Collections.sort()方法,因为它不会采用LinkedHashMap本身或LinkedHashMap的密钥集。在LinkedHashMap中按字母顺序排序键
我唯一的选择是在填写LinkedHashMap时手动排序它们,但在这之前我想知道是否有人知道更好的方法。
更好的方法是使用支持订单的地图,如TreeMap。
但是,如果你有一个破碎的设计,你不能修复你可以做到这一点。
LinkedHashMap<String, String> map = ...
TreeMap<String, String> copy = new TreeMap<>(map);
map.clear();
map.putAll(copy);
这会发生工作,但如果您添加一个键,您的地图将不再被排序。
谢谢!它工作得很好。 – ImNoProGrammer
你是什么意思“排序键”?你是否想按照字母键顺序遍历条目,或者直接提取键并对它们进行排序? – Bohemian
按字母顺序迭代输入对我来说已经足够了 – ImNoProGrammer