这是我的程序中我遇到了2个错误,我无法解决。这一行有两个错误:
Map<OverEmp, String> m = new HashMap<OverEmp
,String>();
,消息显示未找到符号。
class OverEmp {
private int employeeID;
private String firstName;
private String lastName;
public OverEmp(int employeeID, String firstName, String lastName) {
super();
this.employeeID = employeeID;
this.firstName = firstName;
this.lastName = lastName;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + employeeID;
result = prime * result
+ ((firstName == null) ? 0 : firstName.hashCode());
result = prime * result
+ ((lastName == null) ? 0 : lastName.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
OverEmp other = (OverEmp) obj;
if (employeeID != other.employeeID)
return false;
if (firstName == null) {
if (other.firstName != null)
return false;
} else if (!firstName.equals(other.firstName))
return false;
if (lastName == null) {
if (other.lastName != null)
return false;
} else if (!lastName.equals(other.lastName))
return false;
return true;
}
}
class HashCodeDemo {
public static void main(String[] args) {
Map<OverEmp, String> m = new HashMap<OverEmp, String>();
OverEmp cust = new OverEmp(1, "Roger", "Cox");
m.put(cust,"Roger Cox");
// retrieving using another instance
System.out.println(m.get(new OverEmp(1, "Roger", "Cox")));
// retrieving using same instance
System.out.println(m.get(cust));
}
}