哈希集和树集都属于集合框架。HashSet是Set接口的实现,而Tree set实现排序的集。树集由TreeMap支持,而HashSet由哈希映射支持。
序号 | 键 | 哈希集 | 树集 |
---|---|---|---|
1 | 实作 | 哈希集是使用HashTable实现的 | 树集是使用树结构实现的。 |
2 | 空对象 | HashSet允许一个空对象 | 树集不允许使用空对象。它抛出空指针异常。 |
3 | 方法 | 哈希集使用equals方法比较两个对象 | 树集使用比较方法比较两个对象。 |
4 | 异构对象 | 哈希集现在不允许使用异构对象 | 树集允许异构对象 |
5 | 定购 | HashSet不维护任何顺序 | TreeSet维护对象的排序顺序 |
class TreeSetExmaple { public static void main(String[] args){ TreeSet<String> treeset = new TreeSet<String>(); treeset.add("Good"); treeset.add("For"); treeset.add("Health"); //添加重复元素 treeset.add("Good"); System.out.println("TreeSet : "); for (String temp : treeset) { System.out.println(temp); } } }
输出结果
TreeSet: Health For Good
class HashSetExample { public static void main(String[] args){ HashSet<String> hashSet = new HashSet<String>(); hashSet.add("Good"); hashSet.add("For"); hashSet.add("Health"); //添加重复元素 hashSet.add("Good"); System.out.println("HashSet: "); for (String temp : hashSet) { System.out.println(temp); } } }
输出结果
TreeSet: Health Good For