方法中的if与return

来源:互联网 发布:将字符串转换为json 编辑:程序博客网 时间:2024/04/30 07:22
String func(int i){if(i>=0)return "+";if(i<0)       //else if(i<0)return "-";}

上述判断输入数字为正还是负的代码能正确完成它的功能么?NO,编译的时候报了“This method must return a result of type String”的错误,即使两个if条件完全覆盖了i的取值范围。就算将第二个if语句改成 else if也一样。 

由于方法必须需要返回值,编译器看到的情况是如果i不符合两个if的条件,那么方法就没有返回值了。所以必须有个else return,或者独立的return

static String func(int i){if(i>=0)return "+";else if(i<0)return "-";else return "";}


0 0