所以我试图通过 int 索引获取 TreeMap 的键。
这是我的代码:
TreeMap<String, Integer> map = new TreeMap<String, Integer>(Collections.reverseOrder());
map.put("hi", 1);
map.put("hi2", 5);
System.out.println("Key: " + (String) map.keySet().toArray()[0] + "\nValue: " + map.get(0));
Run Code Online (Sandbox Code Playgroud)
但是当我执行这个时,我收到错误:
java.lang.Integer cannot be cast to java.lang.String
Run Code Online (Sandbox Code Playgroud)
所以我试图得到钥匙:“hi2”
小智 5
问题是
"\nValue: " + map.get(0)
Run Code Online (Sandbox Code Playgroud)
的参数get必须是 a String,而不是Integerlike 0。所以这样做:
String key = map.keySet().toArray()[0];
Integer value = map.get(key);
System.out.println("Key: " + key + "\nValue: " + value);
Run Code Online (Sandbox Code Playgroud)