ArrayBlockingQueue es una cola de bloqueo limitada que almacena los elementos respaldados internamente por una array.
- La clase ArrayBlockingQueue es miembro de Java Collections Framework.
- Acotado significa que tendrá un tamaño fijo, no puede almacenar el número de elementos más que la capacidad de la cola.
- La cola también sigue la regla FIFO (primero en entrar, primero en salir) para almacenar y eliminar elementos de la cola.
- Si intenta colocar un elemento en una cola llena o tomar un elemento de una cola vacía, la cola lo bloqueará.
El método peek() se usa para devolver la cabeza de la cola. Recupera, pero no elimina, la cabeza de esta cola. Si la cola está vacía, este método devuelve nulo.
Sintaxis:
public E peek()
Parámetros : El método no toma ningún parámetro.
Valor devuelto: el método devuelve el elemento presente al principio de esta cola.
Los siguientes programas ilustran el método peek() de ArrayBlockingQueue.
Programa 1:
Java
// Program to demonstrate peek() method of ArrayBlockingQueue import java.util.concurrent.ArrayBlockingQueue; public class GFG { public static void main(String[] args) { // Define capacity of ArrayBlockingQueue int capacity = 5; // Create object of ArrayBlockingQueue ArrayBlockingQueue<Integer> queue = new ArrayBlockingQueue<Integer>(capacity); // Add element to ArrayBlockingQueue queue.add(23); queue.add(32); queue.add(45); queue.add(12); // Print queue after adding numbers System.out.println("After adding numbers queue is "); System.out.println(queue); // Print head of queue using peek() method System.out.println("Head of queue "+queue.peek()); } }
After adding numbers queue is [23, 32, 45, 12] Head of queue 23
Programa 2:
Java
// Program to demonstrate contains(Object o) method of ArrayBlockingQueue import java.util.concurrent.ArrayBlockingQueue; public class GFG { // Create a User Object with name and age as the attribute public class User{ public String name; public String age; User(String name,String age){ this.name=name; this.age=age; } } // Main Method public static void main(String[] args) { GFG gfg=new GFG(); gfg.offerExample(); } // Method to give example of contains function public void offerExample() { // Define capacity of ArrayBlockingQueue int capacity = 5; // Create object of ArrayBlockingQueue ArrayBlockingQueue<User> queue = new ArrayBlockingQueue<User>(capacity); // Create user objects User user1=new User("Aman","24"); User user2=new User("Amar","23"); User user3=new User("Sanjeet","25"); User user4=new User("Suvo","26"); User user5=new User("Ravi","22"); // Add Objects to ArrayBlockingQueue queue.offer(user1); queue.offer(user2); queue.offer(user3); queue.offer(user4); queue.offer(user5); // Find peek of queue User head=queue.peek(); // Print head System.out.println("Details of First User Inserted"); System.out.println("User Name : "+head.name); System.out.println("User Age : "+head.age); } }
Details of First User Inserted User Name : Aman User Age : 24
Referencia: https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ArrayBlockingQueue.html#peek()
Publicación traducida automáticamente
Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA