import java.util.Arrays;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.SortedSet;
import java.util.TreeSet;
public class sdf
{
public static void main(String[] args)
{
HashSet<String> hashSet = new HashSet<String>(Arrays.asList("b c e f g a".split(" ")));
LinkedHashSet<String> linkedHashSet = new LinkedHashSet<String>(Arrays.asList("b c e f g a".split(" ")));
SortedSet<String> TreeSet = new TreeSet<String>(Arrays.asList("b c e f g a".split(" ")));
System.out.println("hashSet: " + hashSet);
System.out.println("linkedHashSet:" + linkedHashSet);
System.out.println("TreeSet: " + TreeSet);
}
}
输出结果:
hashSet: [f, g, e, b, c, a]
linkedHashSet:[b, c, e, f, g, a]
TreeSet: [a, b, c, e, f, g]
因此:
HashSet:哈希表是通过使用称为散列法的机制来存储信息的,
元素并没有以某种特定顺序来存放;
LinkedHashSet:以元素插入的顺序来维护集合的链接表,
允许以插入的顺序在集合中迭代;
TreeSet:提供一个使用树结构存储Set接口的实现,
对象以升序顺序存储,访问和遍历的时间很快。