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
极客教程