错误:java中缺少返回语句-条件方法

错误:java中缺少返回语句-条件方法,java,string,methods,return,Java,String,Methods,Return,如果在我的main中满足任何条件,需要一些帮助来返回字符串吗 当我调用ratesult=calccatcrassage时,性别 谢谢您需要一个默认的返回值来编译它。现在,函数中的最后一条语句是: private static final String string1= "food budget-$3.00 per day or $10.00 per week."; private static final String string2 = "food budget 2 - $2.00 per d

如果在我的main中满足任何条件,需要一些帮助来返回字符串吗 当我调用ratesult=calccatcrassage时,性别


谢谢

您需要一个默认的返回值来编译它。现在,函数中的最后一条语句是:

private static final String string1= "food budget-$3.00 per day or $10.00 per week.";
private static final String string2 = "food budget 2 - $2.00 per day or $7.00 per week.";
private static final String string3 = "food budget 3 - $1.00 per day or $5.00 per week.";
private static final String string4 = "food budget 4 - $%4.2f per day or $%5.2f per week.";

private static String calcRateClass(int cat, String food)
{
  while(gender.equals("m"))
     if(cat > 32 && cat < 64)
        return string1;
  if(cat > 24 && cat < 31)
     return string3;
  if (cat > 65)
     return string4; 
  else
     while(gender.equals("f"))
        if(age > 29 && age < 63)
           return string1;
  if(age > 24 && age < 30)
     return string2;
  if (age > 62)
     return string4;
}
如果到了函数的这一点,并且字符串calcRateClassint cat中的年龄,则字符串食物方法如果所有条件都无效,则不会返回任何值,因此将其更改为

if (age > 62)
    return string4;

return "ERROR - no conditions met!";

这是因为您可以到达方法的末尾,但找不到任何return语句,但您指定将返回一个字符串


在这种情况下,您可以添加一个返回null的最终返回语句。

在最后一个if语句之后,您实际上缺少了一个返回语句可能食品预算太少:请格式化您的代码,并在必要时放上括号,以便澄清。lol@Mariuszs和ty ichram正是这样。完美。非常感谢。工作得很好。竖起大拇指
if (age > 62)
    return string4;

return "ERROR - no conditions met!";
String result = "";
if(cat > 32 && cat < 64)
     result = string1;
if(cat > 24 && cat < 31)
     result = string3;
      .
      .

return result;