java.util.concurrent.LinkedTransferQueue的removeIf()方法是Java的內置函數,用於刪除該隊列中滿足給定謂詞過濾器的所有元素,該謂詞過濾器作為參數傳遞給該方法。
用法:
public boolean removeIf(Predicate filter)
參數:此方法采用代表謂詞的參數過濾器,該謂詞定義了要刪除元素的過濾標準。
返回值:此方法返回一個布爾值,描述是否已刪除某些指定元素。如果謂詞返回true,並且元素已被刪除,則返回True。
異常:如果指定的過濾器為null,則此方法將引發NullPointerException。
以下示例程序旨在說明LinkedTransferQueue類的removeIf()函數:
示例1:
// Java code to illustrate
// removeIf() method of LinkedTransferQueue
import java.util.concurrent.LinkedTransferQueue;
import java.util.*;
public class GFG {
public static void main(String[] args)
throws InterruptedException
{
// create object of LinkedTransferQueue
LinkedTransferQueue<Integer> LTQ
= new LinkedTransferQueue<Integer>();
// Add numbers to end of LinkedTransferQueue
// using add() method
LTQ.add(6);
LTQ.add(3);
LTQ.add(5);
LTQ.add(15);
LTQ.add(20);
// Print the LTQ
System.out.println("Linked Transfer Queue initially: "
+ LTQ);
// Remove all multiple of 3
// using removeIf() method
if (LTQ.removeIf(n -> (n % 3 == 0)))
System.out.println("Multiples of 3 removed.");
else
System.out.println("No element removed.");
// Print the LTQ
System.out.println("Current Linked Transfer Queue: "
+ LTQ);
}
}
輸出:
Linked Transfer Queue initially: [6, 3, 5, 15, 20] Multiples of 3 removed. Current Linked Transfer Queue: [5, 20]
示例2:演示NullPointerException
// Java code to illustrate
// removeIf() method of LinkedTransferQueue
import java.util.concurrent.LinkedTransferQueue;
import java.util.*;
public class GFG {
public static void main(String[] args)
throws InterruptedException
{
// create object of LinkedTransferQueue
LinkedTransferQueue<Integer> LTQ
= new LinkedTransferQueue<Integer>();
// Add numbers to end of LinkedTransferQueue
// using add() method
LTQ.add(6);
LTQ.add(3);
LTQ.add(5);
LTQ.add(15);
LTQ.add(20);
// Print the LTQ
System.out.println("Linked Transfer Queue initially: "
+ LTQ);
try {
// Remove all multiple of 3
// using removeIf() method
System.out.println("Trying to remove null.");
LTQ.removeIf(null);
}
catch (Exception e) {
System.out.println(e);
}
}
}
輸出:
Linked Transfer Queue initially: [6, 3, 5, 15, 20] Trying to remove null. java.lang.NullPointerException
相關用法
- Java LinkedBlockingDeque removeIf()用法及代碼示例
- Java CopyOnWriteArraySet removeIf()用法及代碼示例
- Java CopyOnWriteArrayList removeIf()用法及代碼示例
- Java LinkedTransferQueue toArray()用法及代碼示例
- Java LinkedTransferQueue remainingCapacity()用法及代碼示例
- Java LinkedTransferQueue transfer()用法及代碼示例
- Java LinkedTransferQueue tryTransfer()用法及代碼示例
- Java LinkedTransferQueue forEach()用法及代碼示例
- Java LinkedTransferQueue toString()用法及代碼示例
- Java LinkedTransferQueue retainAll()用法及代碼示例
- Java LinkedTransferQueue removeAll()用法及代碼示例
- Java LinkedTransferQueue getWaitingConsumerCount()用法及代碼示例
- Java ArrayList removeIf()用法及代碼示例
- Java Vector removeIf()用法及代碼示例
注:本文由純淨天空篩選整理自ProgrammerAnvesh大神的英文原創作品 LinkedTransferQueue removeIf() method in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。