package next11;
import java.util.Date;
import java.util.GregorianCalendar;
public class EmployeeTest {
public static void main (String [] args){
Employee alice1= new Employee("Alice Adams", 75000, 1987, 12, 15);
Employee alice2 = alice1;
Employee alice3= new Employee("Alice Adams", 75000, 1987, 12, 15);
Employee bob = new Employee("Bob Brandson", 50000, 1989, 10, 1);
System.out.println("alice1 == alice2 "+(alice1 == alice2));
System.out.println("alice1 == alice3 "+(alice1 == alice3));
System.out.println("alice1 equals(alice3) "+alice1.equals(alice3));
System.out.println("alice1 equals(bob) "+alice1.equals(bob));
System.out.println("bob.toString "+bob);
}
}
class Employee{
private String name;
private double salary;
private Date hireDay;
public Employee(String n,double s,int year,int month,int day){
name = n;
salary = s;
GregorianCalendar calendar = new GregorianCalendar(year,month -1,day);
hireDay = calendar.getTime();
}
public Date getHireDay() {
return hireDay;
}
public String getName() {
return name;
}
public double getSalary() {
return salary;
}
public void raiseSlary(double byPercent){
double raiseSalary = salary*byPercent/100;
salary +=raiseSalary;
}
public boolean equals (Object otherObject){
if(this == otherObject) return true;//这一句要怎么理解?本类对象与otherObject引用的对象一致?alice1.equals(alice3)套上的话又该怎么具体分析呢?
//Object otherObject = alice3?如果是这样,所指的对象应该不同呀。有点卡住了,呵呵
if(otherObject==null) return false;
if(this.getClass()!=otherObject.getClass()) return false;
Employee other =(Employee)otherObject;
return name.equals(other.name)
&&salary == other.salary
&&hireDay.equals(other.hireDay);
}
public int hashCode(){
return 7*name.hashCode()
+11*new Double(salary).hashCode()
+13*hireDay.hashCode();
}
public String toString(){
return getClass().getName()
详细解决方案
equals步骤
热度:24 发布时间:2016-04-23 21:49:01.0
相关解决方案
- 关于 if(rs.getString("").trim().equals(""))解决办法
- 关于 if(rs.getString("").trim().equals("")),该如何处理
- JAVA口试经典-“==”与“equals”
- 请问用过ksoap的前辈:Error verifying method org/ksoap2/serialization/SoapObject equals(Ljava/lang/Object;)Z
- 学习java Thinking in java 书中有段代码 & 跟 equals() 关于本题 求解
- 请教两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对
- ""equals(cur_msgText),该怎么解决
- 惊天发现 空串.equals(str)的害处
- J# 中有没有java.util.Arrays.equals(byte[],byte[])这个步骤
- equals 和==的区别是什么解决办法
- equals 和 == 的区别
- 有关"=="和"equals()"的问题
- 数据库得出字符串跟jsp表单传递的字符串相同,equals()函数不能匹配
- 关于"test"equals(param)与param.equals("test")的研讨
- 关于"test"equals(param)与param.equals("test")的探讨解决思路
- struts1 的<logic: equals>标签失效有关问题
- el 表达式 里 equals 与==的差异
- el 表达式 里 equals 与==的差别
- 在(String)str.equals("a/b(abc)")时,不能判断里边的斜杠和括号
- null.equals(string),该如何解决
- 强烈推荐 (x.compareTo(y)==0) == (x.equals(y)) 这种做法解决方法
- 小弟我们爱分享-Obey the general contract when overriding equals
- equals()步骤
- JAVA equals 跟 “==”的异同
- Java中==、equals、hashcode的差别与重写equals以及hashcode方法实例
- emf 可以生成 .equals(Object o)的代码吗?解决方案
- "abc"equals(str)跟str.equals("abc")的区别,从源码分析为什么"abc"euqals(str)可以避免空指针
- 大神们,Java中""equals()什么意思啊该怎么处理
- 关于SAX解析中字符串比较(如:tagName.equals("name"))出现空指针的奇怪异常
- 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?解决方案