Java.util.Collections.disjoint() 方法在Java中的应用和示例

Java.util.Collections.disjoint() 方法在Java中的应用和示例

java.util.Collections.disjoint() 方法在java.util.Collections类中出现。它用于检查两个指定的集合是否是不相交的。更正式地,如果两个集合没有共同元素,则它们是不相交的。

语法:
public static boolean disjoint(Collection<?> c1, Collection<?> c2)
参数:
c1 – 一个集合
c2 – 一个集合
返回值:
如果两个指定的集合没有共同元素,则返回true。
抛出异常:
NullPointerException-如果任一集合为空。
NullPointerException-如果一个集合包含一个null元素并且null不是另一个集合的有效元素。
ClassCastException-如果一个集合包含其他集合不合格的类型的元素。

请注意,允许在两个参数中传递相同的集合,在这种情况下,如果集合为空,该方法将返回true。

// Java程序演示如何工作 
// java.utils.Collections.disjoint()
  
import java.util.*;
   
public class DisjointDemo
{
    public static void main(String[] args)
    {
        // 创建一个字符串数组列表
        List<String>  mylist1 = new ArrayList<String>();
        mylist1.add("practice");
        mylist1.add("code");
        mylist1.add("quiz");
        mylist1.add("geeksforgeeks");
          
        // 创建字符串向量
        List<String>  mylist2 = new Vector<String>();
        mylist2.add("geeks");
        mylist2.add("geek");
        mylist2.add("for");
        mylist2.add("coder");
          
        // 创建一个向量 
        List mylist3 = new Vector();
          
        mylist3.add(1); 
        mylist3.add("practice");     
          
        // 创建一个字符串集
        Set<String>  mylist4 = new HashSet<String>();
        mylist4.add("practice");
        mylist4.add("code");
        mylist4.add("quiz");
        mylist4.add("geeksforgeeks");
          
          
        // 使用disjoint() 方法检查两个集合是否不相交
        System.out.println("mylist1是否不相交于mylist2 : " +
                            Collections.disjoint(mylist1, mylist2));
          
        System.out.println("mylist1是否不相交于mylist3 : " +
                            Collections.disjoint(mylist1, mylist3));
          
        System.out.println("mylist1是否不相交于mylist4 : " +
                            Collections.disjoint(mylist1, mylist4));
  
    }
}

输出:

mylist1是否不相交于mylist2 : true
mylist1是否不相交于mylist3 : false
mylist1是否不相交于mylist4 : false

如何快速检查Java中的两个数组是否相交?

Java中的Arrays类没有disjoint方法。我们可以使用Collections.disjoint()来快速检查两个数组的不相交性。

// Java程序演示了数组的disjoint()方法
  
import java.util.*;
   
public class DisjointDemo
{
    public static void main(String[] args)
    {
        // 创建整型数组
        Integer arr1[] = {10, 20, 30, 40, 50};
        Integer arr2[] = {60, 70, 80, 90, 100};
        Integer arr3[] = {50, 70, 80, 90, 100};
        Double  arr4[] = {50.0, 60.0, 110.0};
          
          
        // 请参阅下面的帖子,以了解asList()的详细信息
        // https://www.geeksforgeeks.org/array-class-in-java/
        // 这里我们使用disjoint()方法来检查两个数组是否不相交
        System.out.println("arr1是否不相交于arr2 :" +
                         Collections.disjoint(Arrays.asList(arr1), Arrays.asList(arr2)));
          
        System.out.println("arr1是否不相交于arr3 :" +
                         Collections.disjoint(Arrays.asList(arr1), Arrays.asList(arr3)));
          
        System.out.println("arr1是否不相交于arr4 :" +
                         Collections.disjoint(Arrays.asList(arr1), Arrays.asList(arr4)));
  
    }
}

输出结果:

arr1是否不相交于arr2 :true
arr1是否不相交于arr3 :false
arr1是否不相交于arr4 :true

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程