Java树映射返回键位置

Java树映射返回键位置,java,treemap,Java,Treemap,我有这张树图: Map teamNameAndLeague = new TreeMap(); teamNameAndLeague.put("team1", "name1"); teamNameAndLeague.put("team2", "name2"); teamNameAndLeague.put("team3", "name3"); 如何搜索键并返回该键的索引示例: search for key: "team1" in teamNameAndLeague, Returns index:

我有这张树图:

Map teamNameAndLeague = new TreeMap();

teamNameAndLeague.put("team1", "name1");
teamNameAndLeague.put("team2", "name2");
teamNameAndLeague.put("team3", "name3");
如何搜索键并返回该键的索引示例:

search for key: "team1" in teamNameAndLeague, Returns index: 1
我有这个:

int indexWin = new ArrayList<String>(teamNameAndLeague.values()).indexOf("name2") + 1;

That returns: 2

它返回该键的索引,但用于搜索键值。我怎样才能做一些类似的东西,而不是搜索关键字,TreeMap不使用索引;这是一棵树,不是线性序列。如果您希望进行订购,您可以这样做

为此,您必须为键提供一个比较器,默认字符串比较器将执行此操作,如果您愿意,可以将列表排序到一个数组中,然后索引该数组,就像您已经发布了值一样。但是,请注意,这会忽略树结构。请参见中的示例

另外,请注意页面底部的链接列表:这些链接将引导您完成基本的树形图操作


另一种方法是使用keys中的set对象,teamNameAndLeague.keySet;这也忽略了树结构。

它返回基于键的索引。。。这不是在搜索键吗?你的索引是根据插入顺序还是根据树状图?我认为树状图中没有任何索引