Java HashMap forEach() 使用方法及示例 - Java教程

由网友 大卫 发布 阅读 12

Java HashMap forEach() 使用方法及示例 - Java教程

Java HashMap 方法

Java HashMap forEach()方法用于对哈希映射的每个映射执行指定的操作。

forEach()方法的语法为:

hashmap.forEach(BiConsumer<K, V> action)

forEach()参数

  • action - 对HashMap的每个映射执行的操作

forEach()返回值

forEach()方法不返回任何值。

示例:Java HashMap forEach()

import java.util.HashMap;

class Main {
  public static void main(String[] args) {
    // 创建 HashMap
    HashMap<String, Integer> prices = new HashMap<>();

    //向HashMap插入条目
    prices.put("Shoes", 200);
    prices.put("Bag", 300);
    prices.put("Pant", 150);
    System.out.println("市场价: " + prices);

    System.out.print("折扣价: ");

    // 将lambda表达式传递给 forEach()
    prices.forEach((key, value) -> {

      // 值降低10%
      value = value - value * 10/100;
      System.out.print(key + "=" + value + " ");
    });
  }
}

输出结果

市场价: {Pant=150, Bag=300, Shoes=200}
折扣价: Pant=135 Bag=270 Shoes=180

在上面的示例中,我们创建了一个名为prices的哈希映射。注意代码,

prices.forEach((key, value) -> {
  value = value - value * 10/100;
  System.out.print(key + "=" + value + " ");  
});

我们已将lambda表达式作为该forEach()方法的参数传递。这里,

  • forEach()方法为哈希表的每个条目执行由lambda表达式指定的操作

  • lambda表达式将每个值减少10%,并打印所有键和减少的值

要了解有关lambda表达式的更多信息,请访问Java Lambda 表达式

注意:forEach()方法与for-each循环不同。我们可以使用Java for-each循环遍历哈希表的每个条目。

Java HashMap 方法

Java HashMap entrySet() Java HashMap getOrDefault()