【发布时间】:2016-08-25 20:31:28
【问题描述】:
所以我被困在一些家庭作业上,试图从我的名为 records 的类中创建一个 Employee 类的实例。
public class Employee implements Comparable<Employee>
{
/* instance variables */
private String Name;
private String employeeNumber;
/**
* Constructor for Employee
*/
public Employee(String employNum)
{
super();
this.employeeNumber = employNum;
}
接下来我需要创建一个 Record 类来创建员工详细信息的 HashSet,这就是我需要帮助的地方。
public class Records
{
private HashSet employeeSet;
public Records()
{
Set<Employee> employeeSet = new HashSet<Employee>();
}
然后我希望它有一种方法来添加新员工,然后将他们的记录放入集合中。
public enrollEmployee(String num)
{
Employee newEmp = new Employee(num);
employeeSet.add(newEmp);
}
}
我无法获得创建新员工的最后一点,它不会出现错误并且可以正确编译。只是没有新员工。 *添加employeeSet.add(newEmp);导致编译器警告,并且由于 NullPointerException 导致该方法无法运行,可能是因为实际上并未创建员工。
有关更多信息,当我创建员工时,如果仅输入员工编号,则名称应显示为“null”,但我仍需要存储该信息。
已编辑以更新信息。 Employee 类的更多细节我已经省略了,我只应该创建 Records 类。
最后一次更新,感谢您的帮助。阅读回复后,这就是我要为我工作的内容。
public class Records
{
private Set<Employee> employeeSet = new HashSet<Employee>();
public Records()
{
}
public void enrollEmployee(String num)
{
Employee newEmp = new Employee(num);
employeeSet.add(newEmp);
}
}
【问题讨论】:
-
“我无法获得最后一点来创建新员工。”。你有错误吗?到底出了什么问题?
-
你的
Set<String>应该是Set<Employee>对吧?
标签: java class methods constructor hashset