HashSet性能比TreeSet好(在添加查询元素的操作的时候)
TreeSet要用额外红黑树算法来维护集合元素的次序,只有当需要一个保持排序的Set的时候才应该用TreeSet,否则都应该用HashSet
EnumSet是所有Set实现类中性能最好的,但它只能保持同一个枚举类的枚举值作为集合的元素
HashSet、TreeSet和EnumSet都是线程不安全的,如果有多个线程同时访问一个Set集合,并且超过一条线程修改了该Set集合,则必须手动保持该Set集合的同步性,通常通过Collections工具类的synchronizedSortedSet方法来包装该集合,并且最好在创建集合的时候操作,防止对Set集合的意外非同步性访问
如:SortedSet s =Collections.synchronizedSortedSet(new TreeSet(....)) |