TreeSet和HashSet的区别


  TreeSet: 底层基于实现二叉树(红黑树)、不允许为空、元素有序

      排序方式有两种:自然排序(默认排序方式)、定制排序。自然排序时根据放入的元素(同一类元素)的类实现的接口comparable的compareTo方法进行比较。自然排序是根据集合元素的大小,以升序排列,如果要定制排序,应该使用Comparator接口,实现 int compare(T o1,T o2)方法

  HashSet: 底层基于hash表实现,允许一个为空,元素无序。