zoukankan      html  css  js  c++  java
  • java重载equals和hashCode

    class Employee {
    
        private int salary;
        private java.util.Date hireDay;
        private String name;
    
        public int getSalary() {
            return salary;
        }
    
        public void setSalary(int salary) {
            this.salary = salary;
        }
    
        public Date getHireDay() {
            return hireDay;
        }
    
        public void setHireDay(Date hireDay) {
            this.hireDay = hireDay;
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public Employee(String name, int salary, Date hireDay) {
            this.name = name;
            this.hireDay = hireDay;
            this.salary = salary;
        }
    
        public Employee() {
    
        }
    
        static private HashMap<String, String> dict = new HashMap<String, String>();
    
        static {
            num = 0;
    /*        dict.put("1","Employee");
            dict.put("2","Employee");*/
        }
    
        @Override
        public String toString() {
    
            if (hireDay == null)
                hireDay = Calendar.getInstance().getTime();
            SimpleDateFormat formatter;
            formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            return String.format("name:%s,salary:%d,hireDay:%s", name, salary, formatter.format(hireDay));
        }
    
        static int num;
    
        public static int getNum() {
            return num;
        }
    
        public static int setNum(int a) {
            num += a;
            return getNum();
        }
    
        @Override
        public int hashCode() {
            //0
            int result = 11;
            result = result * 17 + (name == null ? 0 : name.hashCode());
            result = result * 17 + (hireDay == null ? 0 : hireDay.hashCode());
            //result=result*17+salary;
            return result;
        }
    
        @Override
        public boolean equals(Object obj) {
            if (obj == null || !(obj instanceof Employee))
                return false;
            if (this == obj)
                return true;
            Employee instance = (Employee) obj;
    
            return name.equals(instance.name) && hireDay.equals(instance.hireDay);
        }
    }

     

  • 相关阅读:
    jquery 的 outerWidth() 、width() 、innerWidth()
    图片自动切换 避免 鼠标快速滑过
    Ajax中日历控件的使用
    asp.net如何读取xml文件中的数据
    ASP.NET使用AspNetPager实现简单的分页功能
    XmlDataDocument与DataSet相互转化
    C#中如何过滤掉多余的html代码
    asp.net的几种经典的页面传值方法
    ASP.Net分页方法详解
    ASP.Net中省市级联有关
  • 原文地址:https://www.cnblogs.com/zhshlimi/p/6439844.html
Copyright © 2011-2022 走看看