我的任务是使用一个旧的实验室,我们创建了一个包围它的GUI,很简单..我没有问题创建GUI或继承变量来创建不同的对象,但一个对象在其参数中需要Enum类型,并且我似乎很难将枚举类型分配给对象,即使编译器没有抱怨,所以也许你们可以帮我解决问题。访问一个枚举类型通过继承来创建一个对象
public enum Department {
PAYROLL, PRODUCTION, ACCOUNTING, RESEARCH, MARKETING;
public static Department getRandomDepartment() {
Department[] d = Department.values();
int size = Department.values().length;
return d[r.nextInt(size)];
}
};
有可以利用的赋值函数方法setDepartment,但我不知道如何进行实例化:包含枚举类
Manager类。
public void setDepartment(Department d) {
department = d;
}
我的继承人新增管理员方法在我的GUI类:
if(command.equals("Add Manager")){
m_name = inputName.getText();
m_num = inputNum.getText();
m_year = Integer.parseInt(inputHire.getText());
m_yearlyPay = Double.parseDouble(inputYearly.getText());
if(inputDepartment.equals("Payroll") || inputDepartment.equals("payroll")){
Manager temp = new Manager(m_name,m_num,m_year,m_yearlyPay,Manager.Department.PAYROLL);
System.out.println(temp);
}
if(inputDepartment.equals("Production") || inputDepartment.equals("production")){
Manager temp = new Manager(m_name,m_num,m_year,m_yearlyPay,Manager.Department.PRODUCTION);
System.out.println(temp);
}
if(inputDepartment.equals("Accounting") || inputDepartment.equals("accounting")){
Manager temp = new Manager(m_name,m_num,m_year,m_yearlyPay,Manager.Department.ACCOUNTING);
System.out.println(temp);
}
if(inputDepartment.equals("Research") || inputDepartment.equals("research")){
Manager temp = new Manager(m_name,m_num,m_year,m_yearlyPay,Manager.Department.RESEARCH);
System.out.println(temp);
}
if(inputDepartment.equals("Marketing") || inputDepartment.equals("marketing")){
Manager temp = new Manager(m_name,m_num,m_year,m_yearlyPay,Manager.Department.MARKETING);
System.out.println(temp);
}
}
那里有明显有毛病我的方法,因为当我输入通过GUI部门不承认该部门我补充说,我的下一步应该是什么想法?
'f.equals( “富”)|| f.equals( “foo” 的)'可以改写为'f.equalsIgnoreCase( “富”) '(除非你想排除像''fOo''这样的病例。 – Pshemo
伟大的小费生病记住这一点,谢谢! –