📅  最后修改于: 2023-12-03 15:16:26.567000             🧑  作者: Mango
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
,分别是 set1
、set2
和 set3
。其中,set1
和 set2
中的元素顺序相同,而 set3
中的元素顺序不同。我们通过 equals()
方法比较了 set1
和 set2
,以及 set1
和 set3
,结果都为 true
,说明元素顺序不同,equals()
方法会自动对其进行排序后再进行比较,所以两个 SortedSet
可以相等。
扩展阅读:Java中的SortedSet