📜  Java中的 SortedSet equals() 方法及示例(1)

📅  最后修改于: 2023-12-03 15:16:26.567000             🧑  作者: Mango

Java中的 SortedSet equals() 方法及示例

SortedSet 接口继承自 Set 接口,它在 Set 接口的基础上增加了对元素按照排序方式进行管理的功能。

equals() 方法是 Object 类中的方法,SortedSet 接口继承了 Set 接口中的 equals() 方法,并重写了原有的 equals() 方法,用于比较两个 SortedSet 是否相等。在进行比较时,会先比较两个 SortedSet 中元素的数量是否相等,如果不相等,则 equals() 方法会直接返回 false。如果元素数量相等,那么比较两个 SortedSet 中每个位置上的元素是否相等,如果用 equals() 方法比较的结果全都为 true,则 SortedSet 相等,否则不相等。

示例代码如下:

import java.util.SortedSet;
import java.util.TreeSet;

public class SortedSetExample {
    public static void main(String[] args) {
        SortedSet<String> set1 = new TreeSet<>();
        set1.add("A");
        set1.add("B");
        set1.add("C");

        SortedSet<String> set2 = new TreeSet<>();
        set2.add("A");
        set2.add("B");
        set2.add("C");

        SortedSet<String> set3 = new TreeSet<>();
        set3.add("B");
        set3.add("C");
        set3.add("A");

        System.out.println("set1.equals(set2) = " + set1.equals(set2)); // true
        System.out.println("set1.equals(set3) = " + set1.equals(set3)); // true
    }
}

在上面的示例代码中,我们创建了三个 SortedSet,分别是 set1set2set3。其中,set1set2 中的元素顺序相同,而 set3 中的元素顺序不同。我们通过 equals() 方法比较了 set1set2,以及 set1set3,结果都为 true,说明元素顺序不同,equals() 方法会自动对其进行排序后再进行比较,所以两个 SortedSet 可以相等。

扩展阅读:Java中的SortedSet