Java Class 缺少 return 语句

Java Class Missing return statement

我的代码似乎有问题:

 public static String Equilateral (int a, int b, int c){

    if(a==b && b==c)
    return "Equilateral";


} 

当我明明有 return 时它却说 "missing return statement"。有人可以帮忙吗?非常感谢。

它说因为如果你的条件语句的计算结果为 false 那么就不会有 return 语句,你的代码会跳过它。

改为使用此模板:

if(a==b && b==c){
    return "Equilateral";
}
else{ 
    return "Not Equilateral!";
}

你应该使用一些大括号,这将有助于理解你正在做的事情并防止像你这样的错误。

或者,如果您希望使用单个 return 语句:

String result = "Not Equilateral";

if(a==b && b==c){
    result = "Equilateral";
}
return result;

根据 OP 的说明进行编辑:

如果您这样设置代码,那么如果您的三角形不是等边的,returned 字符串将为空(System.out.print() 不会打印任何内容)。

String result = "";

if(a==b && b==c){
    result = "Equilateral";
}
return result;

假设您的 if 条件 return 为 (a==b && b==c) 设置了 false 值。在那种情况下,你会 return 做什么?还是Equilateral

你真正需要的是

public static String Equilateral (int a, int b, int c){

    if(a==b && b==c)
        return "Equilateral";

    return "";

} 

或压缩格式

public static String Equilateral (int a, int b, int c){

    return (a==b && b==c)? "Equilateral" : "" ;

}