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


Java ArrayBlockingQueue size()用法及代码示例


ArrayBlockingQueue是有界的阻塞队列,该队列内部使用数组支持的元素存储。

  • ArrayBlockingQueue类是Java Collections Framework的成员。
  • 有界意味着它将具有固定的大小,您不能存储数量超过队列容量的元素。
  • 队列还遵循FIFO(先进先出)规则,用于存储和删除队列中的元素。
  • 如果您尝试将一个元素放入一个完整的队列或从一个空队列中取出一个元素,那么该队列将阻塞。

size()方法返回队列包含的元素数。大小是一种重要的方法,可以通过计算队列容量和队列大小之间的差异来查看队列包含多少元素以及可以向此队列添加多少元素。
用法:

public int size()

参数:该方法不带任何参数。
返回值:该方法返回此队列中的元素数。


下面的程序说明ArrayBlockingQueue的size()方法。
示例1:

// Program to Demonstrate the size() 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 elements to ArrayBlockingQueue 
    queue.add(23); 
    queue.add(32); 
    queue.add(45); 
      
    // Print size of queue after adding numbers 
    int size=queue.size(); 
    System.out.println("After addding numbers"+ 
                              " Queue size = " +size); 
      
    // Add more elements to ArrayBlockingQueue 
    queue.add(88); 
    queue.add(42); 
      
    // Print size of queue after adding numbers 
    size=queue.size(); 
    System.out.println("After addding more numbers"
                               +" Queue size = " +size); 
      
}  
}
输出:
After addding numbers Queue size = 3
After addding more numbers Queue size = 5

示例2:

// Program to demonstrate size() 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 to store 5 names 
    ArrayBlockingQueue<String> names = new 
             ArrayBlockingQueue<String>(capacity); 
       
    // Add element to ArrayBlockingQueue 
    names.add("Aman"); 
    names.add("Siddhant"); 
     
      
    // Print size of queue after adding numbers 
    int size = names.size(); 
    System.out.println("After addding numbers"+ 
                            " Queue size = "+size); 
      
      
    // Add more elements to ArrayBlockingQueue 
    names.add("Raunak"); 
    names.add("Suvo"); 
      
    // Print size of queue after adding numbers 
    size=names.size(); 
    System.out.println("After addding more numbers"+ 
                                 " Queue size = "+size); 
      
}  
}
输出:
After addding numbers Queue size = 2
After addding more numbers Queue size = 4

参考: https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ArrayBlockingQueue.html#size()



相关用法


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