TreeSet HashSet LinkedHashSet

/**
         *
         * @param
         * TreeSet  有序(实现Comparable接口),唯一  不能为空
         * HashSet  有序(实现Comparable接口),唯一 不能为空
         * LinkedHashSet    “有序” (基于链表,) 不唯一 可以为空
         */

public static  void main(String[] args) {
        Stu b1=new Stu(1,"张三",18,"男");
        Stu b2=new Stu(9,"神侣",33,"女");
        Stu b3=new Stu(4,"大神",111,"男");
        Stu b4=new Stu(2,"大神",111,"男");

Set<Stu> set1=new TreeSet<Stu>();//有序,唯一
        set1.add(b1);
        set1.add(b2);
        set1.add(b3);
        set1.add(b4);
        //    set1.add(null);     java.lang.NullPointerException
        Iterator<Stu> it1 = set1.iterator(); //迭代器
        while(it1.hasNext()){
            System.out.println(it1.next());
        }
        System.out.println("------------");
        
        //HashSet
        Set<Stu> set=new HashSet<Stu>();//有序,唯一
        set.add(b1);
        set.add(b2);
        set.add(b3);
        set.add(null);
        set.add(b4);
        Iterator<Stu> it = set1.iterator(); //迭代器
        while(it.hasNext()){
            System.out.println(it.next());
        }
        System.out.println("------------");
        
        //LinkedHashSet
        Set<Stu> set2=new LinkedHashSet<Stu>();//有序,唯一
        set2.add(b1);
        set2.add(b2);
        set2.add(b3);
        set2.add(null);
        set2.add(b4);
        
        
        Iterator<Stu> it2 = set2.iterator(); //迭代器
        while(it2.hasNext()){
            System.out.println(it2.next());
        }

}

猜你喜欢

转载自www.cnblogs.com/FuckJava/p/8939813.html