(九)LinkedHashSet的使用

package day23_集合;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.Set;
public class class06_LinkedHashSet {
	@SuppressWarnings({ "rawtypes", "unchecked" })
	public static void main(String[] args) {
		Set set=new LinkedHashSet();
		set.add(new Integer(20));
		set.add(new String("中国"));
		set.add(new Object());
		set.add(new Integer(99));
		set.add(new String("美国"));
		set.add(new Object());
		Iterator iterator=set.iterator();
		while(iterator.hasNext()) {
			System.out.println(iterator.next());
		}
	}
}

在这里插入图片描述
为什么LinkedHashSet可以做到有序呢,虽然它也是按照添加元素的哈希值进行存放的,但是它给每一个元素的首尾额外添加了两个节点,一个指向前一个元素,一个指向后一个元素,第一个元素的头节点为null,最后一个元素的尾节点为null。这是通过这些链接找到每个元素的前后元素

发布了27 篇原创文章 · 获赞 3 · 访问量 2229

猜你喜欢

转载自blog.csdn.net/weixin_42992842/article/details/104112333