java - 如何通过整数键 Java 对数组的 HashMap 进行排序

标签 java arrays sorting hashmap

我有一个HashMap由整数标识的字符串数组作为键。我想按键对这个 HashMap 进行排序。

我的 HashMap :HashMap<Integer, String[]> htab = new HashMap<>();

我尝试了 TreeMap解决方案,但它没有我的值的兼容构造函数( String[] ): Map<Integer, String> map = new TreeMap<Integer, String>((Comparator<? super Integer>) htab);

一组我的 HashMap 的示例:

21 : {"2","3","5","10","0"}

最佳答案

您不需要 (Comparator<? super Integer>)您的 TreeMap 的一部分。您还使用过String而不是String[]在你的声明中。此代码将起作用:

SortedMap<Integer, String[]> sortedMap = new TreeMap<Integer, String[]>(Htab);

或者,您也可以将 Htab 声明为 TreeMap,而不是 HashMap。

关于java - 如何通过整数键 Java 对数组的 HashMap 进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40863491/

相关文章:

algorithm - 现金支付的支付设备金额建议算法

java - 使用 Active Directory 重定向 Azure 上 Spring OAuth2 应用程序的 URL : Invalid Redirect URI Parameter

javascript - 将数组中的字符串分解为子数组

java - 我无法按行打印数组,只能打印一个长字符串

wpf - 如何按完整日期格式化 WPFToolkit.DataGridTextColumn?

arrays - 对包含另一个可选项的可选项数组进行排序

java - 在 Android TextView 中对齐文本和图标

java - Spring 术语中命令、表单、业务和实体对象之间的区别?

java - 将不同的 xml 转换为另一个 xml

java - 使用 `import java.util.Random` 如何获得不重复的结果?