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 removeIf()用法及代码示例
- Java ConcurrentLinkedQueue remove()用法及代码示例
- Java ConcurrentLinkedQueue retainAll()用法及代码示例
- Java ConcurrentLinkedQueue add()用法及代码示例
- Java ConcurrentLinkedQueue offer()用法及代码示例
- Java ConcurrentLinkedQueue spliterator()用法及代码示例
- Java ConcurrentLinkedQueue size()用法及代码示例
- Java ConcurrentLinkedQueue forEach()用法及代码示例
- Java ConcurrentLinkedQueue iterator()用法及代码示例
- Java ConcurrentLinkedQueue contains()用法及代码示例
- Java ConcurrentLinkedQueue peek()用法及代码示例
- Java ConcurrentLinkedQueue isEmpty()用法及代码示例
- Java ConcurrentLinkedQueue addAll()用法及代码示例
- Java ConcurrentLinkedQueue poll()用法及代码示例
- Java ConcurrentLinkedQueue toArray()用法及代码示例
- Java ConcurrentLinkedDeque add()用法及代码示例
- Java ConcurrentLinkedDeque removeFirstOccurrence()用法及代码示例
- Java ConcurrentLinkedDeque removeLast()用法及代码示例
- Java ConcurrentLinkedDeque hashCode()用法及代码示例
- Java ConcurrentLinkedDeque contains()用法及代码示例
注:本文由纯净天空筛选整理自 Java ConcurrentLinkedQueue removeAll() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。