zoukankan      html  css  js  c++  java
  • [javaSE] 集合框架(HashSet)

    Set:元素是无序,不可重复的

    HaseSet:底层数据结构是哈希表

    定义一个类Demo

    获取Demo对象,system.out.println(demo),打印demo对象,Demo@xxxxxx

    Demo对象在内存中是按照哈希值存储在哈希表中,取出也是按照哈希值,所以是无序的

    import java.util.HashSet;
    
    class Demo{
    }
    public class HashSetDemo {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            Demo demo1=new Demo();
            Demo demo2=new Demo();
            System.out.println(demo1);
            System.out.println(demo2);
            HashSet set=new HashSet();
            set.add(demo1);
            set.add(demo2);
            System.out.println(set);
        }
    
    }

    结果:

    Demo@1a8fa0f0

    Demo@4b8efa2f

    [Demo@4b8efa2f, Demo@1a8fa0f0]

    定义一个类Demo

    重写hashCode()方法,返回一个固定的数字,例如:90,打印对象显示,Demo@3c

    获取多个对象,哈希值都是一样的,此时存入HaseSet中,使用equals()方法,判断是否是同一个对象,如果不是同一个对象,会顺延存储

    import java.util.HashSet;
    
    class Demo{
        @Override
        public int hashCode() {
            return 90;
        }
        @Override
        public boolean equals(Object obj) {
            System.out.println("调用到此处说明,判断是否同一对象");
            return super.equals(obj);
        }
    }
    public class HashSetDemo {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            Demo demo1=new Demo();
            Demo demo2=new Demo();
            System.out.println(demo1);
            System.out.println(demo2);
            HashSet set=new HashSet();
            set.add(demo1);
            set.add(demo2);
            System.out.println(set);
        }
    
    }

    结果:

    Demo@5a

    Demo@5a

    调用到此处说明,判断是否同一对象

    [Demo@5a, Demo@5a]

  • 相关阅读:
    搜索优化
    ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程)
    Tomcat7.0.22在Windows下详细配置过程
    maven 安装配置
    Venus wiki
    搜索引擎基本原理及实现技术——用户查询意图分析
    sql 表自连接
    select 多表查询
    select 嵌套
    Ioc和Aop扩展--多种方式实现依赖注入(构造注入,p命名空间注入,集合类型注入,注入null和注入空值)
  • 原文地址:https://www.cnblogs.com/taoshihan/p/5484104.html
Copyright © 2011-2022 走看看