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


Java CopyOnWriteArraySet retainAll()用法及代码示例


java.util.concurrent.CopyOnWriteArraySet类的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.concurrent.*; 
  
public class GFG1 { 
    public static void main(String[] argv) throws Exception 
    { 
  
        try { 
  
            // Creating object of CopyOnWriteArraySet<Integer> 
            CopyOnWriteArraySet<Integer> 
                set1 = new CopyOnWriteArraySet<Integer>(); 
  
            // Populating set1 
            set1.add(1); 
            set1.add(2); 
            set1.add(3); 
            set1.add(4); 
            set1.add(5); 
  
            // print set1 
            System.out.println("CopyOnWriteArraySet before "
                               + "retainAll() operation : "
                               + set1); 
  
            // Creating another object of  CopyOnWriteArraySet<Integer> 
            CopyOnWriteArraySet<Integer> 
                set2 = new CopyOnWriteArraySet<Integer>(); 
            set2.add(1); 
            set2.add(2); 
            set2.add(3); 
  
            // print set2 
            System.out.println("Collection Elements"
                               + " to be retained : "
                               + set2); 
  
            // Removing elements from set 
            // specified in set2 
            // using retainAll() method 
            set1.retainAll(set2); 
  
            // print set1 
            System.out.println("CopyOnWriteArraySet after "
                               + "retainAll() operation : "
                               + set1); 
        } 
  
        catch (NullPointerException e) { 
            System.out.println("Exception thrown : " + e); 
        } 
    } 
}
输出:
CopyOnWriteArraySet before retainAll() operation : [1, 2, 3, 4, 5]
Collection Elements to be retained : [1, 2, 3]
CopyOnWriteArraySet after retainAll() operation : [1, 2, 3]

示例2:对于NullPointerException

// Java program to demonstrate 
// retainAll() method for Integer value 
  
import java.util.concurrent.*; 
  
public class GFG1 { 
    public static void main(String[] argv) throws Exception 
    { 
  
        try { 
  
            // Creating object of CopyOnWriteArraySet<Integer> 
            CopyOnWriteArraySet<Integer> 
                set1 = new CopyOnWriteArraySet<Integer>(); 
  
            // Populating set1 
            set1.add(1); 
            set1.add(2); 
            set1.add(3); 
            set1.add(4); 
            set1.add(5); 
  
            // print set1 
            System.out.println("CopyOnWriteArraySet before "
                               + "retainAll() operation : "
                               + set1); 
  
            // Creating another object of  CopyOnWriteArraySet<Integer> 
            CopyOnWriteArraySet<Integer> 
                set2 = null; 
  
            // print set2 
            System.out.println("Collection Elements"
                               + " to be retained : "
                               + set2); 
  
            System.out.println("\nTrying to pass "
                               + "null as a specified element\n"); 
  
            // Removing elements from set 
            // specified in set2 
            // using retainAll() method 
            set1.retainAll(set2); 
  
            // print set1 
            System.out.println("CopyOnWriteArraySet after "
                               + "retainAll() operation : "
                               + set1); 
        } 
  
        catch (NullPointerException e) { 
            System.out.println("Exception thrown : " + e); 
        } 
    } 
}
输出:
CopyOnWriteArraySet 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


相关用法


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