java.util.Stack類的retainAll()方法用於從此堆棧中保留指定集合中包含的所有元素。
用法:
public boolean retainAll(Collection c)
參數:此方法將集合c作為包含要從此堆棧保留的元素的參數。
返回值:如果此堆棧由於調用而更改,則此方法返回true。
異常:如果此堆棧包含null元素並且指定的集合不允許null元素(可選),或者指定的collection為null,則此方法引發NullPointerException。
以下示例說明了retainAll()方法。
示例1:
// Java program to demonstrate
// retainAll() method for Integer value
import java.util.*;
public class GFG1 {
public static void main(String[] argv) throws Exception
{
try {
// Creating object of Stack<Integer>
Stack<Integer>
stack1 = new Stack<Integer>();
// Populating stack1
stack1.add(1);
stack1.add(2);
stack1.add(3);
stack1.add(4);
stack1.add(5);
// print stack1
System.out.println("Stack before "
+ "retainAll() operation : "
+ stack1);
// Creating another object of Stack<Integer>
Stack<Integer>
stack2 = new Stack<Integer>();
stack2.add(1);
stack2.add(2);
stack2.add(3);
// print stack2
System.out.println("Collection Elements"
+ " to be retained : "
+ stack2);
// Removing elements from stack
// specified in stack2
// using retainAll() method
stack1.retainAll(stack2);
// print stack1
System.out.println("Stack after "
+ "retainAll() operation : "
+ stack1);
}
catch (NullPointerException e) {
System.out.println("Exception thrown : " + e);
}
}
}
輸出:
Stack before retainAll() operation : [1, 2, 3, 4, 5] Collection Elements to be retained : [1, 2, 3] Stack after retainAll() operation : [1, 2, 3]
示例2:對於NullPointerException
// Java program to demonstrate
// retainAll() method for Integer value
import java.util.*;
public class GFG1 {
public static void main(String[] argv) throws Exception
{
try {
// Creating object of Stack<Integer>
Stack<Integer>
stack1 = new Stack<Integer>();
// Populating stack1
stack1.add(1);
stack1.add(2);
stack1.add(3);
stack1.add(4);
stack1.add(5);
// print stack1
System.out.println("Stack before "
+ "retainAll() operation : "
+ stack1);
// Creating another object of Stack<Integer>
Stack<Integer>
stack2 = null;
// print stack2
System.out.println("Collection Elements"
+ " to be retained : "
+ stack2);
System.out.println("\nTrying to pass "
+ "null as a specified element\n");
// Removing elements from stack
// specified in stack2
// using retainAll() method
stack1.retainAll(stack2);
// print stack1
System.out.println("Stack after "
+ "retainAll() operation : "
+ stack1);
}
catch (NullPointerException e) {
System.out.println("Exception thrown : " + e);
}
}
}
輸出:
Stack before retainAll() operation : [1, 2, 3, 4, 5] Collection Elements to be retained : null Trying to pass null as a specified element Exception thrown : java.lang.NullPointerException
相關用法
- Java Set retainAll()用法及代碼示例
- Java AbstractSet retainAll()用法及代碼示例
- Java LinkedHashSet retainAll()用法及代碼示例
- Java CopyOnWriteArraySet retainAll()用法及代碼示例
- Java ArrayList retainAll()用法及代碼示例
- Java AbstractSequentialList retainAll()用法及代碼示例
- Java HashSet retainAll()用法及代碼示例
- Java TreeSet retainAll()用法及代碼示例
- Java AbstractCollection retainAll()用法及代碼示例
- Java SortedSet retainAll()用法及代碼示例
- Java LinkedBlockingDeque retainAll()用法及代碼示例
- Java LinkedTransferQueue retainAll()用法及代碼示例
- Java Vector retainAll()用法及代碼示例
- Java CopyOnWriteArrayList retainAll()用法及代碼示例
- Java List retainAll()用法及代碼示例
注:本文由純淨天空篩選整理自Code_r大神的英文原創作品 Stack retainAll() method in Java with Example。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。