HashSet集合

  • Java集合概述:Java集合类存放于java.util包,是用来存放对象的容器。
  1. 集合只能存放对象。
  2. 集合存放的是多个对象的引用,对象的内容还是存放在堆内存中。
  3. 集合可以存放不限数量的不同类型的数据类型
  4. 集合可以分为Set(无序不重复集合)、List(有序可重复集合)、Map(具有映射关系的集合)
  • HashSet是Set的典型实现,它是按照Hash算法来存储集合中的元素,具有很好的存取和查找性能
  1. HashSet具有以下特点:①无序、②、不可重复、③、HashSet不是线程安全的、④HashSet的集合元素可以是null
  2. 当HashSet集合中存入一个元素时,HashSet集合会通过该对象的hashcode()方法来查找其HashCode值,并根据HashCode值决定该元素在集合中的位置。
  3. HashSet集合判断两个元素相等的标准:两个对象通过equals()方法比较相等,并且两个对象的HashCode()的返回值也相等。
  • HashSet的相关操作
  • import java.util.HashSet;
    import java.util.Iterator;
    import java.util.Set;
    
    public class test3 {
        public static void main(String[] args) {
            //HashSet的定义
            Set set = new HashSet();
            Set<String> set1 = new HashSet<String>();    //指定某一数据类型的Set集合
            
            //HashSet添加元素
            set.add("My");
            set.add("age");
            set.add("is");
            set.add(22);
            set.add(null);
            
            set1.add("Xi'an");
            set1.add("Jiaotong");
            set1.add("University");
            
            System.out.println(set);
            //删除HashSet中某一固定的元素
            set.remove("str");
            //使用Object类遍历Set
            for(Object obj: set) {
                System.out.println(obj);
            }
            
            //获取Set的元素数目
            System.out.println(set.size());
            //clear()方法删除Set中的所有元素
            set.clear();
            System.out.println(set);
            
            //判读Set中是否含有某个元素
            System.out.println(set.contains(758));
            System.out.println(set.contains("age"));
            
            //使用迭代器遍历Set
            Iterator<String> it = set1.iterator();
            while(it.hasNext()) {
                System.out.println(it.next());
            }
        }
    }

     

posted @ 2020-09-16 21:06  Peterxiazhen  阅读(359)  评论(0编辑  收藏  举报