TreeSet主要是Java中SortedSet的一个实现,不允许重复,对象按排序升序存储。
TreeSet 的一些重要特性是:
- 在 TreeSet 中不允许重复值,因为它实现了SortedSet接口。
- TreeSet 中的对象按升序存储。
- 在 TreeSet 中,元素的插入顺序不保持。
TreeMap是 Map 接口的一个实现。 TreeMap 也是 NavigableMap 和 AbstractMap 类的实现。
TreeMap 的一些重要特性是:
- 在 TreeMap 中不允许空键(如 Map),因此抛出NullPointerException (多个空值可能与不同的键相关联)。
- TreeMap 不支持Entry.setValue方法。
下面是Java中 TreeSet 和 TreeMap 的说明:
示例 1:
Java
// Illustration of TreeMap and TreeSet in Java
import java.io.*;
import java.util.*;
class GFG {
public static void main(String[] args)
{
TreeSet set = new TreeSet<>();
set.add(3);
set.add(4);
set.add(3);
set.add(5);
TreeMap tm = new TreeMap<>();
tm.put(2, 4);
tm.put(3, 5);
tm.put(4, 5);
tm.put(2, 3);
System.out.println(set);
System.out.println(tm);
}
}
Java
// Illustration of TreeMap and TreeSet in Java
import java.io.*;
import java.util.*;
class GFG {
public static void main(String[] args)
{
TreeSet l = new TreeSet<>();
l.add("geeks");
l.add("FOR");
l.add("geeks");
l.add("tutorial");
TreeMap l1 = new TreeMap<>();
l1.put(1, "geeks");
l1.put(2, "FOR");
l1.put(3, "geeks");
l1.put(4, "tutorial");
System.out.println(l);
System.out.println(l1);
}
}
输出
[3, 4, 5]
{2=3, 3=5, 4=5}
示例 2:
Java
// Illustration of TreeMap and TreeSet in Java
import java.io.*;
import java.util.*;
class GFG {
public static void main(String[] args)
{
TreeSet l = new TreeSet<>();
l.add("geeks");
l.add("FOR");
l.add("geeks");
l.add("tutorial");
TreeMap l1 = new TreeMap<>();
l1.put(1, "geeks");
l1.put(2, "FOR");
l1.put(3, "geeks");
l1.put(4, "tutorial");
System.out.println(l);
System.out.println(l1);
}
}
输出
[FOR, geeks, tutorial]
{1=geeks, 2=FOR, 3=geeks, 4=tutorial}
S. No. |
TreeSet |
TreeMap |
---|---|---|
1. | TreeSet implements SortedSet in Java. | TreeMap implements Map Interface in Java |
2. | TreeSet stored a single object in java. | TreeMap stores two Object one Key and one value. |
3. | TreeSet does not allow duplication Object in java. | TreeMap in java allows duplication of values. |
4. | TreeSet implements NavigableSet in Java. | TreeMap implements NavigableMap in Java. |
5. | TreeSet is sorted based on objects. | TreeMap is sorted based on keys. |