簡體   English   中英

Java TreeMap返回鍵位置

[英]Java TreeMap return key position

我有這張樹圖:

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不使用索引。 它是一棵樹,而不是線性序列。 如果您想下訂單,可以這樣做。

為此,您必須為鍵提供一個Comparator(如果需要,默認字符串Comparator會這樣做),將列表排序到數組中,然后對數組進行索引,這與您已經使用值發布的方式非常相似。 但是請注意,這將忽略樹結構。 參見http://java2novice.com/java-collections-and-util/treemap/basic-comparator/中的示例

另外,請注意頁面底部的鏈接列表:這些鏈接將引導您完成基本的TreeMap操作。

另一種方法是使用來自鍵teamNameAndLeague.keySet的“ set”對象; 這也忽略了樹的結構。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM