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


Java AbstractQueue add()用法及代码示例


如果可以在不违反容量限制的情况下立即执行操作,则AbstractQueue的add(E e)方法会将指定的元素插入此队列。成功时返回true,如果当前没有可用空间,则抛出IllegalStateException。

用法:

public boolean add(E e)

参数:此方法接受强制参数e,该参数是要插入队列的元素。


返回:如果将元素插入队列,则此方法返回true,否则返回false。

异常:此方法引发以下异常:

  • IllegalStateException:如果由于容量限制此时无法添加元素
  • NullPointerException :如果指定的元素为null
  • ClassCastException-如果指定元素的类阻止将其添加到此队列中
  • IllegalArgumentException-如果此元素的某些属性阻止将其添加到此队列中

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

程序1:

// Java program to illustrate the 
// AbstractQueue add() method 
import java.util.*; 
import java.util.concurrent.LinkedBlockingQueue; 
  
public class GFG1 { 
    public static void main(String[] argv) 
        throws Exception 
    { 
        // Creating object of AbstractQueue<Integer> 
        AbstractQueue<Integer> 
            AQ = new LinkedBlockingQueue<Integer>(); 
  
        // Populating AQ 
        AQ.add(10); 
        AQ.add(20); 
        AQ.add(30); 
        AQ.add(40); 
        AQ.add(50); 
  
        // print AQ 
        System.out.println("AbstractQueue contains:" + AQ); 
    } 
}
输出:
AbstractQueue contains:[10, 20, 30, 40, 50]

程序2:IllegalStateException程序

// Java program to illustrate the 
// AbstractQueue add() method 
// IllegalStateException 
import java.util.*; 
import java.util.concurrent.LinkedBlockingQueue; 
  
public class GFG1 { 
    public static void main(String[] argv) 
        throws Exception 
    { 
        try { 
            // Creating object of AbstractQueue<Integer> 
            AbstractQueue<Integer> 
                AQ = new LinkedBlockingQueue<Integer>(2); 
  
            // Populating AQ 
            AQ.add(10); 
            AQ.add(20); 
            AQ.add(30); 
            AQ.add(40); 
            AQ.add(50); 
  
            // print AQ 
            System.out.println("AbstractQueue contains:" + AQ); 
        } 
        catch (Exception e) { 
            System.out.println("exception:" + e); 
        } 
    } 
}
输出:
exception:java.lang.IllegalStateException:Queue full

程序3:NullPointerException的程序

// Java program to illustrate the 
// AbstractQueue add() method 
// NullPointerException 
import java.util.*; 
import java.util.concurrent.LinkedBlockingQueue; 
  
public class GFG1 { 
    public static void main(String[] argv) 
        throws Exception 
    { 
        try { 
            // Creating object of AbstractQueue<Integer> 
            AbstractQueue<Integer> 
                AQ = new LinkedBlockingQueue<Integer>(); 
  
            // Populating AQ 
            AQ.add(10); 
            AQ.add(20); 
            AQ.add(30); 
            AQ.add(null); 
            AQ.add(50); 
  
            // print AQ 
            System.out.println("AbstractQueue contains:" + AQ); 
        } 
        catch (Exception e) { 
            System.out.println("exception:" + e); 
        } 
    } 
}
输出:
exception:java.lang.NullPointerException

参考: https://docs.oracle.com/javase/8/docs/api/java/util/AbstractQueue.html#add-E-



相关用法


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