Java Collection Framework 提供了一个名为 Set 的接口,它扩展了 Collection 接口并用于存储唯一元素。它描述了数学集合的特征。因此,它允许我们对数学集执行所有这些操作,例如并集、比较、交集等。本文的议程是编写 Java 程序来比较两个集合。对于两个集合的比较操作,Java 提供了一个内置方法“equals()”,我们将在下一节中讨论该方法。
Java程序比较两个集合
我们将在我们的Java程序中使用以下类和方法来比较两个集合 -
TreeSet类
由于Set是一个接口,我们不能直接使用它的功能。为此,我们需要实现 Set 接口的 TeeSet 类,这意味着它可以访问 Set 的所有方法。它存储表单树结构中的所有元素,并且与Set一样,它不允许存储重复的元素。
equals()方法
它是Set的一个方法,用于检查两个给定的集合是否包含相同数量和类型且顺序相同的对象。如果两个集合都满足条件,则返回 true,否则返回 false。
语法
setOne.equals(setTwo);
登录后复制
现在,让我们进入Java程序,比较并检查两个给定的集合是否相等。
Example 1
的中文翻译为:
示例 1
在下面的Java程序中,我们将创建两个TreeSet类,它们具有相同的元素但顺序不同。尽管如此,当我们使用equals()方法进行比较时,它将返回true,因为默认情况下TreeSet会按照排序顺序存储其元素。
import java.util.*;
public class Example1 {
public static void main(String args[]) {
// Creating the first tree set
TreeSet treeSt1 = new TreeSet();
// Adding elements in tree set
treeSt1.add("Tutorix");
treeSt1.add("Simply");
treeSt1.add("Easy");
treeSt1.add("Learning");
treeSt1.add("Tutorials");
treeSt1.add("Point");
System.out.println("Elements of the first set: " + treeSt1);
// Creating the second tree set
TreeSet treeSt2 = new TreeSet();
// Adding elements in tree set
treeSt2.add("Tutorials");
treeSt2.add("Point");
treeSt2.add("Tutorix");
treeSt2.add("Simply");
treeSt2.add("Easy");
treeSt2.add("Learning");
System.out.println("Elements of the second set: " + treeSt2);
// comparing both sets
if (treeSt1.equals(treeSt2)) {
System.out.println("Both sets are equal");
} else {
System.out.println("Both sets are not equal");
}
}
}
登录后复制
输出
Elements of the first set: [Easy, Learning, Point, Simply, Tutorials, Tutorix]
Elements of the second set: [Easy, Learning, Point, Simply, Tutorials, Tutorix]
Both sets are equal
登录后复制
示例 2
这是另一个Java程序,演示了如何使用equals()方法比较两个集合。我们首先初始化两个数组,然后使用asList()方法将它们转换为集合,以便我们可以使用equals()方法进行比较。
import java.util.*;
public class Example2 {
public static void main(String[] args) {
// defining the first array
String arrOne[] = { "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y" };
// creating an instance of TreeSet and storing the values of first array
TreeSet trSet1 = new TreeSet(Arrays.asList(arrOne));
System.out.println("Elements of the first set: " + trSet1);
// defining the second array
String arrTwo[] = { "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y" };
// creating an instance of TreeSet and storing the values of second array
TreeSet trSet2 = new TreeSet(Arrays.asList(arrTwo));
System.out.println("Elements of the second set: " + trSet2);
// comparing both sets
if (trSet1.equals(trSet2)) {
System.out.println("Both sets are equal");
} else {
System.out.println("Both sets are not equal");
}
}
}
登录后复制
输出
Elements of the first set: [P, Q, R, S, T, U, V, W, X, Y]
Elements of the second set: [P, Q, R, S, T, U, V, W, X, Y]
Both sets are equal
登录后复制
结论
我们首先定义了 Java 集合框架的 Set 接口,在下一节中,我们编写了两个 Java 程序来比较和检查两个给定的集合是否相等。为此,我们使用了 TreeSet 类和 Set 接口的 equals() 方法。
以上就是Java程序比较两个集合的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!