Java中的ArrayDeque forEach()方法

Java中的ArrayDeque forEach()方法

ArrayDeque的 forEach() 方法是从接口java.lang.Iterable继承而来的。如果该方法指定了迭代顺序,则按照迭代顺序执行操作。方法遍历ArrayDeque的每个元素,直到方法处理完所有元素或发生异常。由操作引发的异常将传递给调用者。

语法:

public void forEach(Consumer<? super E> action)

参数: 该方法接受一个名称为 action 的参数,该参数表示要对每个元素执行的操作。

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

异常: 如果指定的操作为null,则该方法会抛出NullPointerException异常。

下面的程序演示了ArrayDeque的forEach()方法:

例1: 演示ArrayDeque上的forEach()方法,其中包含一个String值队列。

// Java程序演示了ArrayDeque的forEach()方法
  
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // 创建一个包含字符串值的ArrayDeque
        ArrayDeque<String> cities = new ArrayDeque<String>();
  
        // 添加字符串到列表中
        cities.add("Kolkata");
        cities.add("Delhi");
        cities.add("Bombay");
        cities.add("Pune");
  
        // 使用ArrayDeque的forEach方法和
        // 打印城市名称
        cities.forEach((n) -> System.out.println(n));
    }
}
Kolkata
Delhi
Bombay
Pune

例2: 演示ArrayDeque上的forEach()方法,其中包含对象队列。

// Java程序演示了ArrayDeque的forEach()方法
  
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // 创建一个包含对象列表的ArrayDeque
        ArrayDeque<batch> list = new ArrayDeque<batch>();
  
        // 添加对象到列表中
        list.add(new batch("CSE", 67));
        list.add(new batch("ECE", 57));
        list.add(new batch("IT", 90));
        list.add(new batch("ME", 78));
  
        // 打印结果
        System.out.println("list of Objects:");
  
        // 使用ArrayDeque的forEach方法和
        // 打印学生姓名
        list.forEach((n) -> print(n));
    }
  
    // 打印对象详情
    public static void print(batch n)
    {
        System.out.println("*******************************");
        System.out.println("Batch Name is " + n.name);
        System.out.println("No of Students are " + n.noOfStudents);
    }
}
  
// 创建一个类
class batch {
  
    String name;
    int noOfStudents;
  
    batch(String name, int noOfStudents)
    {
        this.name = name;
        this.noOfStudents = noOfStudents;
    }
}
list of Objects:
*******************************
Batch Name is CSE
No of Students are 67
*******************************
Batch Name is ECE
No of Students are 57
*******************************
Batch Name is IT
No of Students are 90
*******************************
Batch Name is ME
No of Students are 78

例3: 演示ArrayDeque的forEach()方法的NullPointerException

说明:

// Java程序演示了ArrayDeque的forEach()方法
  
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // 创建一个包含字符串值的ArrayDeque
        ArrayDeque<String> cities = new ArrayDeque<String>();
  
        // 演示NullPointerException
        cities.forEach(null);
    }
}

输出:

Exception in thread "main" java.lang.NullPointerException
    at java.util.ArrayDeque.forEach(Unknown Source)
    at GFG.main(File .java:16)
// Java程序演示ArrayDeque的forEach()方法
  
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // 创建一个包含字符串值的ArrayDeque
        ArrayDeque<String> cities = new ArrayDeque<String>();
  
        // 将字符串添加到列表中
        cities.add("Kolkata");
        cities.add("Delhi");
        cities.add("Bombay");
        cities.add("Pune");
  
        try {
            // ArrayDeque的forEach方法和打印城市名称
            cities.forEach(null);
        }
        catch (Exception e) {
            System.out.println("异常:" + e);
        }
    }
}
异常:java.lang.NullPointerException

引用:

https://docs.oracle.com/javase/10/docs/api/java/util/ArrayDeque.html#forEach(java.util.function.Consumer)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程