如何在 Java 8 中按键和值对 HashMap 进行排序 - 完整教程

已发表: 2020-09-18
如何在 Java 8 中按键和值对 HashMap 进行排序 - 完整教程

在 Java 8 中——如何对地图进行排序?

在 Crunchify 上,我们编写了近 400 篇 Java 教程,而这一篇是 Java8 类别的补充。

我喜欢 Java 集合,并且有多个关于如何迭代 Map 和 List、LinkedList、JSONArray 等的教程。

在本教程中,我们将介绍 Java8 中按键和值对 HashMap 进行排序的最佳方法。

让我们开始吧:

  1. 我们将创建 CrunchifySortMapByKeyValueJava8.java 类
  2. 创建 HashMap<String, Integer> crunchifyMap,这就是我们将用于按 Key 和 Value 排序的内容。
  3. For KEY :我们将从列表中添加随机公司
    • 模式:1 到 10 之间的随机数 + (-) + 列表中的 1 家公司
    • 公司名单:crunchify.com、google.com、twitter.com
  4. For VALUE :我们将添加一个介于 1 到 50 之间的随机数
  5. 我们将打印原始 Map,按 Key Map 排序,按 Value Map 排序

地图.入口。 comparingByKey()返回一个比较器,它按键的自然顺序比较 Map.Entry。

地图.入口。 comparingByValue()返回一个比较器,它按自然顺序比较 Map.Entry 的值。

这是一个完整的Java代码:

请仔细查看下面代码中提到的两个问题这些是简单的实用程序,以防万一您想在项目中使用它。

  • 如何从 ArrayList 中获取随机值?
  • 如何在 Java 8 中遍历 HashMap?

CrunchifySortMapByKeyValueJava8.java

Eclipse 控制台输出:

只需将上面的程序作为 Java 应用程序运行,您应该会看到如下所示的结果。

如果您在运行上述程序时遇到任何问题,请告诉我们。