TreeSet
类似于HashSet
,不同之处在于它按升序对元素进行排序,而HashSet
不维护任何顺序。TreeSet
允许null
元素,但它不允许使用HashSet
。像大多数其他集合类一样,这个类也没有同步,但它可以像这样明确地同步: SortedSet s = Collections.synchronizedSortedSet(new TreeSet(...));
在本教程中,我们将看到TreeSet
示例以及TreeSet
和其他类似集合类之间的区别。
TreeSet 示例:
在这个例子中,我们有两个TreeSet
(TreeSet<String>
和TreeSet<Integer>
)。我们已经随机地将值添加到它们中,但是我们得到的结果按升序排序。
import java.util.TreeSet;
public class TreeSetExample {
public static void main(String args[]) {
// TreeSet of String Type
TreeSet<String> tset = new TreeSet<String>();
// Adding elements to TreeSet<String>
tset.add("ABC");
tset.add("String");
tset.add("Test");
tset.add("Pen");
tset.add("Ink");
tset.add("Jack");
//Displaying TreeSet
System.out.println(tset);
// TreeSet of Integer Type
TreeSet<Integer> tset2 = new TreeSet<Integer>();
// Adding elements to TreeSet<Integer>
tset2.add(88);
tset2.add(7);
tset2.add(101);
tset2.add(0);
tset2.add(3);
tset2.add(222);
System.out.println(tset2);
}
}
输出:您可以看到TreeSet
已按隐式升序排序。
[ABC, Ink, Jack, Pen, String, Test]
[0, 3, 7, 88, 101, 222]