Java中的CopyOnWriteArraySet equals()方法
equals(Object O) 方法用于比较指定的对象和该集合是否相等。如果指定的对象与此对象相同,或者它也是一个集合并且通过对指定集合进行迭代返回的元素与通过对此集合进行迭代返回的元素相同,则返回true。更正式地,如果两个迭代器返回相同数量的元素,并且对于指定集合上迭代器返回的每个元素e1,都存在一个在此集合上迭代器返回的元素e2,使得(e1==null ? e2==null : e1.equals(e2)),则认为这两个迭代器返回相同的元素。
语法:
public boolean equals(Object O)
参数: 此函数接受一个Object参数 O 它是要将CopyOnWriteArraySet与之进行比较的对象。
返回值: 如果比较对象等于此集合,则函数返回true。
程序1:
// Java程序说明
// CopyOnWriteArraySet中的equals()方法
import java.util.concurrent.CopyOnWriteArraySet;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// 创建CopyOnWriteArraySet对象
CopyOnWriteArraySet<Integer> ArrSet1
= new CopyOnWriteArraySet<Integer>();
// 添加元素
ArrSet1.add(32);
ArrSet1.add(67);
ArrSet1.add(98);
ArrSet1.add(100);
// 打印CopyOnWriteArraySet
System.out.println("CopyOnWriteArraySet 1: "
+ ArrSet1);
// 创建CopyOnWriteArraySet对象
CopyOnWriteArraySet<Integer> ArrSet2
= new CopyOnWriteArraySet<Integer>();
// 添加元素
ArrSet2.add(32);
ArrSet2.add(67);
ArrSet2.add(98);
ArrSet2.add(100);
// 打印CopyOnWriteArraySet
System.out.println("CopyOnWriteArraySet 2: "
+ ArrSet2);
// 使用equal()函数进行比较
if (ArrSet1.equals(ArrSet2))
System.out.println("Both are Equal");
else
System.out.println("Both are not Equal");
}
}
输出:
CopyOnWriteArraySet 1: [32, 67, 98, 100]
CopyOnWriteArraySet 2: [32, 67, 98, 100]
Both are Equal
程序2:
//Java程序来说明在CopyOnWriteArraySet中的equals()方法
import java.util.concurrent.CopyOnWriteArraySet;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
//创建CopyOnWriteArraySet对象
CopyOnWriteArraySet ArrSet1
= new CopyOnWriteArraySet ();
//添加元素
ArrSet1.add(32);
ArrSet1.add(67);
ArrSet1.add(98);
ArrSet1.add(100);
//打印CopyOnWriteArraySet
System.out.println("CopyOnWriteArraySet 1: "
+ ArrSet1);
//创建CopyOnWriteArraySet对象
CopyOnWriteArraySet ArrSet2
= new CopyOnWriteArraySet ();
//添加元素
ArrSet2.add(3);
ArrSet2.add(6);
ArrSet2.add(9);
ArrSet2.add(10);
//打印CopyOnWriteArraySet
System.out.println("CopyOnWriteArraySet 2: "
+ ArrSet2);
//使用equal()函数比较两个对象
if (ArrSet1.equals(ArrSet2))
System.out.println("Both are Equal");
else
System.out.println("Both are not Equal");
}
}
输出:
CopyOnWriteArraySet 1: [32, 67, 98, 100]
CopyOnWriteArraySet 2: [3, 6, 9, 10]
Both are not Equal
参考资料: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CopyOnWriteArraySet.html#equals-java.lang.Object-
极客教程