當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java ConcurrentLinkedQueue removeAll()用法及代碼示例


ConcurrentLinkedQueue 類的 removeAll() 方法用於移除 ConcurrentLinkedQueue 中與指定集合的​​項匹配的元素。

用法:

public boolean removeAll(Collection<?> c)

參數:

這裏,參數 c 是包含要從 ConcurrentLinkedQueue 中刪除的元素的集合。

指定者:

ConcurrentLinkedQueue 類的 removeAll() 方法指定為:

接口 Collection<E> 中的 removeAll。

返回值:

如果集合發生更改,removeAll() 方法將返回一個布爾值 'true',否則返回 false。

拋出:

如果指定的集合不支持空元素或包含一個或多個空元素,則拋出 NullPointerException。

例子1

import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ConcurrentLinkedQueue;
public class ConcurrentLinkedQueueRemoveAllExample1 {
    public static void main(String[] args) {
        ConcurrentLinkedQueue<Character> queue = new ConcurrentLinkedQueue<Character>();
        char c;
        for(c='A';c<='Z';++c){
            queue.add(c);
        }
        System.out.println("Queue:"+queue);
        List<Character> list = new ArrayList<Character>();
        list.add('A');
        list.add('E');
        list.add('I');
        list.add('O');
        list.add('U');
        System.out.println("List of vowels:"+list);
        //removes all the elements int the queue which are present in list
        queue.removeAll(list);
        System.out.println("Queue without vowels:"+queue);
    }
}

輸出:

Queue:[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z]
List of vowels:[A, E, I, O, U]
Queue without vowels:[B, C, D, F, G, H, J, K, L, M, N, P, Q, R, S, T, V, W, X, Y, Z]

例子2

import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ConcurrentLinkedQueue;
public class ConcurrentLinkedQueueRemoveAllExample2 {
    public static void main(String[] args) {
        ConcurrentLinkedQueue<Integer> queue = new ConcurrentLinkedQueue<Integer>();
        List<Integer> list = new ArrayList<Integer>();
        for (int i=1;i<11;i++){
            queue.add(i);}
        System.out.println("Total no:"+ queue);
        for (int i=1;i<11;i++){
            i=i+1;
            list.add(i);}
        //removes all the elements int the queue which are present in list
        queue.removeAll(list);
        System.out.println(" Even no:"+list);
        System.out.println(" Odd no:"+queue);
    }
}

輸出:

Total no:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
 Even no:[2, 4, 6, 8, 10]
 Odd no:[1, 3, 5, 7, 9]

例子3

import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ConcurrentLinkedQueue;
public class ConcurrentLinkedQueueRemoveAllExample3 {
    public static void main(String[] args) {
        ConcurrentLinkedQueue<Integer> queue = new ConcurrentLinkedQueue<Integer>();
        List<Integer> list = new ArrayList<Integer>();
        queue.add(67);
        queue.add(100);
        queue.add(null);
        list.add(67);
        queue.removeAll(list);
        System.out.println("Queue:"+queue);
    }
}

輸出:

Exception in thread "main" java.lang.NullPointerException
	at java.util.concurrent.ConcurrentLinkedQueue.checkNotNull(ConcurrentLinkedQueue.java:920)
	at java.util.concurrent.ConcurrentLinkedQueue.offer(ConcurrentLinkedQueue.java:327)
	at java.util.concurrent.ConcurrentLinkedQueue.add(ConcurrentLinkedQueue.java:297)
	at com.javaTpoint.ConcurrentLinkedQueueRemoveAllExample3.main(ConcurrentLinkedQueueRemoveAllExample3.java:12)






相關用法


注:本文由純淨天空篩選整理自 Java ConcurrentLinkedQueue removeAll() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。