El método iterator () de LinkedBlockingQueue devuelve un iterador de los mismos elementos, como este LinkedBlockingQueue, en una secuencia adecuada. Los elementos devueltos por este método contienen todos los elementos en orden desde el primero (cabeza) hasta el último (cola) de LinkedBlockingQueue. El iterador devuelto es débilmente coherente.
Sintaxis:
public Iterator<E> iterator()
Valor devuelto: el método devuelve el iterador que tiene los mismos elementos que los presentes en LinkedBlockingQueue en orden desde el primero (cabeza) hasta el último (cola).
Los siguientes programas ilustran el método iterator() de la clase LinkedBlockingQueue:
Programa 1: Creación de un iterador de LinkedBlockingQueue que contiene nombres de diferentes estudiantes de una clase.
Java
// Java Program Demonstrate iterator() // method of LinkedBlockingQueue import java.util.concurrent.LinkedBlockingQueue; import java.util.Iterator; public class GFG { public static void main(String[] args) { // define capacity of LinkedBlockingQueue int capacityOfQueue = 7; // create object of LinkedBlockingQueue LinkedBlockingQueue<String> linkedQueue = new LinkedBlockingQueue<String>(capacityOfQueue); // Add element to LinkedBlockingQueue linkedQueue.add("John"); linkedQueue.add("Tom"); linkedQueue.add("Clark"); linkedQueue.add("Kat"); // create Iterator of linkedQueue using iterator() method Iterator<String> listOfNames = linkedQueue.iterator(); // print result System.out.println("list of names:"); while (listOfNames.hasNext()) System.out.println(listOfNames.next()); } }
list of names: John Tom Clark Kat
Programa 2: creación de un iterador de LinkedBlockingQueue que contiene una lista de empleados.
Java
// Java Program Demonstrate iterator() // method of LinkedBlockingQueue import java.util.concurrent.LinkedBlockingQueue; import java.util.Iterator; public class GFG { public void collectIterator() { // define capacity of LinkedBlockingQueue int capacityOfQueue = 7; // create object of LinkedBlockingQueue LinkedBlockingQueue<Employee> linkedQueue = new LinkedBlockingQueue<Employee>(capacityOfQueue); // Add element to LinkedBlockingQueue Employee emp1 = new Employee("Sachin", "Developer", "39000"); Employee emp2 = new Employee("Sanjeev", "Tester", "26000"); // Add Employee Objects to linkedQueue linkedQueue.add(emp1); linkedQueue.add(emp2); // create Iterator of linkedQueue using iterator() method Iterator<Employee> listOfEmployee = linkedQueue.iterator(); // print result from iterator System.out.println("list of Employees:"); while (listOfEmployee.hasNext()) { System.out.println("*************************"); Employee emp = listOfEmployee.next(); System.out.println("Employee Name : " + emp.name); System.out.println("Employee Position : " + emp.position); System.out.println("Employee Salary : " + emp.salary); } } // create an Employee Object with name, // position and salary as an attribute public class Employee { public String name; public String position; public String salary; Employee(String name, String position, String salary) { this.name = name; this.position = position; this.salary = salary; } @Override public String toString() { return "Employee [name=" + name + ", position=" + position + ", salary=" + salary + "]"; } } // Main Method public static void main(String[] args) { GFG gfg = new GFG(); gfg.collectIterator(); } }
list of Employees: ************************* Employee Name : Sachin Employee Position : Developer Employee Salary : 39000 ************************* Employee Name : Sanjeev Employee Position : Tester Employee Salary : 26000
Referencia: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/LinkedBlockingQueue.html#iterator–
Publicación traducida automáticamente
Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA