当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java HashMap forEach(BiConsumer)用法及代码示例


HashMap类的forEach(BiConsumer)方法在哈希表的每个条目上执行BiConsumer操作,直到已处理完所有条目或该操作引发异常。 BiConsumer操作是按迭代顺序执行的哈希表键-值对的函数操作。方法遍历Hashtable的每个元素,直到该方法处理完所有元素或发生异常为止。操作抛出的异常将传递给调用方。

用法:

public void forEach(BiConsumer action)

参数:此方法接受BiConsumer类型的参数操作,该参数操作表示要对HashMap元素执行的操作。


返回值:此方法不返回任何内容。

异常:如果操作为null,则此方法抛出NullPointerException。

以下示例程序旨在说明forEach(BiConsumer)方法:

程序1:使用动作遍历哈希图

// Java program to demonstrate 
// forEach(BiConsumer) method. 
  
import java.util.HashMap; 
import java.util.Map; 
import java.util.function.BiConsumer; 
  
public class GFG { 
  
    // Main method 
    public static void main(String[] args) 
    { 
  
        // create a HashMap and add some values 
        Map<String, Integer> map 
            = new HashMap<>(); 
  
        map.put("geeks", 55); 
        map.put("for", 13); 
        map.put("geeks", 22); 
        map.put("is", 11); 
        map.put("heaven", 90); 
        map.put("for", 100); 
        map.put("geekies like us", 96); 
  
        // creating a custom action 
        BiConsumer<String, Integer> action 
            = new MyBiConsumer(); 
  
        // calling forEach method 
        map.forEach(action); 
    } 
} 
  
// Defining Our Action in MyBiConsumer class 
class MyBiConsumer implements BiConsumer<String, Integer> { 
  
    public void accept(String k, Integer v) 
    { 
        System.out.print("Key = " + k); 
        System.out.print("\t Value = " + v); 
        System.out.println(); 
    } 
}
输出:
Key = geeks     Value = 22
Key = for     Value = 100
Key = is     Value = 11
Key = heaven     Value = 90
Key = geekies like us     Value = 96

示例2:

// Java program to demonstrate 
// forEach(BiConsumer) method. 
  
import java.util.HashMap; 
import java.util.Map; 
import java.util.function.BiConsumer; 
  
public class GFG { 
  
    // Main method 
    public static void main(String[] args) 
    { 
  
        // Create a HashMap 
        // and add some values 
        Map<String, Integer> map 
            = new HashMap<>(); 
  
        map.put("geeks", 55); 
        map.put("for", 13); 
        map.put("geeks", 22); 
        map.put("is", 11); 
        map.put("heaven", 90); 
        map.put("for", 100); 
        map.put("geekies like us", 96); 
  
        // creating an action 
        BiConsumer<String, Integer> action 
            = new MyBiConsumer(); 
  
        // calling forEach method 
        map.forEach(action); 
    } 
} 
  
// Defining Our Action in MyBiConsumer class 
class MyBiConsumer implements BiConsumer<String, Integer> { 
  
    public void accept(String k, Integer v) 
    { 
        System.out.println("Key: " + k 
                           + "\tValue: " + v); 
  
        if ("for".equals(k)) { 
            System.out.println("Its the "
                               + "highest value\n"); 
        } 
    } 
}
输出:
Key: geeks    Value: 22
Key: for    Value: 100
Its the highest value

Key: is    Value: 11
Key: heaven    Value: 90
Key: geekies like us    Value: 96

参考: https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html#forEach-java.util.function.BiConsumer-



相关用法


注:本文由纯净天空筛选整理自ia05030112大神的英文原创作品 HashMap forEach(BiConsumer) method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。