我有一个TreeMap,我想根据键对TreeMap进行排序并获得第一个条目
这是我尝试过的,但我的输出为1233 由于数字12(键)较大,我预计输出为444
import java.util.Comparator;
import java.util.TreeMap;
public class Test {
public static void main(String args[])
{
TreeMap<String, String> treeMap = new TreeMap<String, String>(new MyComp());
treeMap.put("9", "1233");
treeMap.put("l2", "444");
treeMap.comparator();
String first = ((TreeMap<String, String>) treeMap).firstEntry().getValue();
System.out.println(first);
}
}
class MyComp implements Comparator<String>{
@Override
public int compare(String str1, String str2) {
return str1.compareTo(str2);
}
}
答案 0 :(得分:0)
如果您希望根据字符串键的数值对TreeMap
进行排序,则需要一个Comparator
来解析这些字符串。使用JDK 8,它是一个优雅的衬垫:
TreeMap<String, String> treeMap =
new TreeMap<>(Comparator.comparingInt(Integer::parseInt));