我在网上查看过,但我无法解决我遇到的问题。我正在使用 hashMap 创建员工商店,但我不确定是否应该像当前版本一样打印 toString() 或 theEntry.getKey()。使用 getKey() 方法时,我得到错误的输出,即:
*员工在公司。*** 员工姓名:James O' Carroll 员工 ID:James O' Carroll 电子邮件:James O' Carroll
正如您在 MainApp 中看到的,我想要 Store.add(new Employee ("James O' Carroll", 18,"hotmail.com")); 成为输出。
我将粘贴我的代码:
//MainApp.
public class MainApp
{
public static void main(String[] args)
{
new MainApp().start();
}
public void start()
{
EmployeeStore Store = new EmployeeStore();
Store.add(new Employee ("James O' Carroll", 18,"hotmail.com"));
Store.print();
}
}
//Employee
//Imports:
//********************************************************************
//Employee Class.
public class Employee
{
//Variables.
private String employeeName;
private int employeeId;
private String employeeEmail;
//********************************************************************
//Constructor.
public Employee(String employeeName, int employeeId, String employeeEmail)
{
this.employeeName = employeeName;
this.employeeId = employeeId;
this.employeeEmail = employeeEmail;
}
//********************************************************************
//Getters.
public String getEmployeeEmail() {
return employeeEmail;
}
public void setEmployeeEmail(String employeeEmail) {
this.employeeEmail = employeeEmail;
}
public String getEmployeeName() {
return employeeName;
}
public int getEmployeeId() {
return employeeId;
}
//********************************************************************
//toString method.
public String toString() {
return "Employee [employeeName=" + employeeName + ", employeeId="
+ employeeId + ", employeeEmail=" + employeeEmail + "]";
}
//********************************************************************
}
//EmployeeStore.
//Imports.
import java.util.HashMap;
//********************************************************************
import java.util.Map;
public class EmployeeStore
{
HashMap<String, Employee> map;
//Constructor.
public EmployeeStore()
{
map = new HashMap<String,Employee>();
}
//********************************************************************
//Hashmap Methods.
//Add to the Hashmap : Employee.
public void add(Employee obj)
{
map.put(obj.getEmployeeName(), obj);
}
//********************************************************************
//Remove from the Hashmap : Employee.
public void remove(String key)
{
//Remove the Employee by name.
map.remove(key);
}
//********************************************************************
//Print the Hashmap : Employee.
public void print()
{
System.out.println("\n********Employee's in the Company.********");
for(Map.Entry<String, Employee> theEntry : map.entrySet())
{
System.out.println("Employee Name:\t" + theEntry.getKey());
System.out.println("Employee Id:\t" + theEntry.getKey());
System.out.println("E-mail:\t "+ theEntry.getKey());
}
}
//********************************************************************
//********************************************************************
}