各位大侠,小弟有个棘手的弱智问题,还请帮忙。
大家知道在java中class TreeMap是根据其键的自然顺序进行排序,那如何能够知道指定键值对在整个TreeMap的索引值。例如以下代码:
TreeMap<String, String> tmp = new TreeMap<String, String>();
tmp.put("a", "aaa");
tmp.put("b", "bbb");
tmp.put("c", "ccc");
tmp.put("d", "cdc");
Iterator<String> iterator_2 = tmp.keySet().iterator();
while (iterator_2.hasNext()) {
Object key = iterator_2.next();
System.out.println("tmp.get(key) is :" + tmp.get(key))
输出结果是:
tmp.get(key) is :aaa
tmp.get(key) is :bbb
tmp.get(key) is :ccc
tmp.get(key) is :cdc
小弟的问题就是想知道("c", "ccc")这个键值对在tmp中的索引。
结果大家都知道是2(第一个为0)
有没有简便的方法来获取该索引号,多谢。
TreeMap java
------解决方案--------------------
转换成List,通过List的方法int indexOf(Object o) 获取Entry的index
list=new ArrayList<Map.Entry<K,V>>(treeMap.entrySet());
------解决方案--------------------