我正在使用的一种方法需要循环,并且我设法将自己变成一个角落,试图通过添加新方法来分离循环。我在下面粘贴了部分代码。 我目前收到错误信息“missing return statement”,虽然我意识到为什么会发生这种情况,但我不确定如何继续。任何帮助或建议,将不胜感激!谢谢。缺少返回语句,循环
public String addJob(String cust,boolean onSite, boolean sHand, String lang)
{ int nt = 100;
if (customers.containsKey(cust))
{
if (0 >= getCustomerCredit(cust)) {
return " Customer over credit limit "; }
if (nt >= getCustomerCredit(cust))
{
Job jb = new Job(cust, onSite, sHand, lang);
job.put(jb, getNewJobNo());
if(lang != "English")
{
isStaffAvailableWork(trnsltr);}
if(sHand == false)
{ isStaffAvailableWork(clk);
}
else { isStaffAvailableWork(typst);
}
}
}
else {
Customer c = new Customer(cust);
customers.put(cust, ntnt);
Job jb = new Job(cust, onSite, sHand, lang);
job.put(jb, getNewJobNo());
if(lang != "English")
{
isStaffAvailableWork(trnsltr);}
if(sHand == false)
{ isStaffAvailableWork(clk);
}
else { isStaffAvailableWork(typst);
}
}
}
public String isStaffAvailableWork(Staff stf)
{
if (staff.containsKey(stf)&&(stf.isStaffAvailable()==true))
{
jb.setJobStatusOnGoing();
stf.setStaffBusy();
jobNoAndstaffId.put(staff.get(stf), job.get(jb));
return "Staff allocated: " + stf;
}
if (staff.containsKey(stf)&&(stf.isStaffAvailable()==false))
{
jb.setJobStatusWaiting();
return "Job Waiting";
}
else return null;
}
您需要显式返回。 '返回isStaffAvailableWork'。此外,这不是你比较'字符串(S)。 –
我对引用循环感到困惑。 – massfords
为了帮助你理解Elliott所说的话......用'!lang.equals(“English”)代替。 – byxor