Java中Set表示一个不包括重复元素的集合,它有HashSet,LinkedHashSet,TreeeSet三种常用实现。
HashSet是Set的最常用实现,它常被用来清除重复元素。
例程:
Set<String> filterSet=new HashSet<String>(); filterSet.add("b"); filterSet.add("b"); filterSet.add("c"); filterSet.add("c"); filterSet.add("a"); filterSet.add("a"); filterSet.add("aa"); filterSet.add("1"); filterSet.add("3"); filterSet.add("s"); for(String str:filterSet) { System.out.println(str); }
输出:
aa a 1 b c 3 s
从上面我们可以看出,HashSet能清除掉重复元素,但不能保持插入顺序,也不会自动排序。
LinkedHashSet不但能清除重复,而且能保持元素的插入顺序。
Set<String> filterSortSet=new LinkedHashSet<String>(); filterSortSet.add("d"); filterSortSet.add("b"); filterSortSet.add("c"); filterSortSet.add("c"); filterSortSet.add("a"); filterSortSet.add("a"); filterSortSet.add("1"); filterSortSet.add("1"); filterSortSet.add("3"); filterSortSet.add("s"); for(String str:filterSortSet) { System.out.println(str); }
输出:
d b c a 1 3 s
TreeSet也能清除重复,且内部自动排序。
例程:
Set<String> filterSortSet=new TreeSet<String>(); filterSortSet.add("d"); filterSortSet.add("b"); filterSortSet.add("c"); filterSortSet.add("c"); filterSortSet.add("a"); filterSortSet.add("a"); filterSortSet.add("1"); filterSortSet.add("1"); filterSortSet.add("3"); filterSortSet.add("s"); for(String str:filterSortSet) { System.out.println(str); }
输出:
1
3
a
b
c
d
s
--END-- 2019-12-24 09:38