package andycpp;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.Set;
import org.junit.Test;
/**
* Collection接口:
* List接口
* ArrayList(主要的实现类)
* LinkedList(对于频繁的插入删除操作)
* Vector(古老的实现类,线程安全,但效率要低于ArrayList)
* Set接口 存储无序,不可重复的元素.Set中常用的方法都是Collection下定义的。
* HashSet(主要实现类)
* LinkedHashSet
* TreeSet
* */
public class TestSet {
/*
* LinkedHashSet:使用链表维护了一个添加进集合中的顺序。导致当我们遍历LinkedHashSet集合元素时,时按照添加进去的顺序遍历的。
* LinkedHashSet插入性能略低于hashSet(因为插入同时还有维护一个链表),但在访问Set里的全部元素时有很好的性能
* */
@Test
public void testHashSet(){
Set set = new LinkedHashSet();
set.add(123);
set.add(456);
set.add(new String("AA"));
set.add(new String("AA"));
set.add("BB");
set.add(null);
Iterator iterator = set.iterator();
while(iterator.hasNext()){
System.out.println(iterator.next());
}
}
}
LinkedHashSet 实现
最新推荐文章于 2021-05-10 16:09:39 发布