Java非法开始表达,'else'没有'if'语法错误

时间:2015-11-04 02:40:35

标签: java syntax

我收到错误:非法开始表达,'else'没有'if',但在这里找不到任何语法错误。

    public int faultyMethod2(int a, int b) {
    int result;

    if((a == 0) || b > 0)) {
        result = (b / a);
    }
    else if (a < 0) {
        result = (a + b);
    }

    return result;
}

1 个答案:

答案 0 :(得分:1)

您的if((a == 0) || b > 0)) {错字应为if((a == 0) || (b > 0)) {。你错过了一个支架。

稍后您需要使用默认值result。您可以提供in声明部分,也可以提供else部分并在那里给出默认值。

 public int faultyMethod2(int a, int b) {
    int result = 0;

    if((a == 0) || b > 0)) {
        result = (b / a);
    }
    else if (a < 0) {
        result = (a + b);
    }

return result;

}

 public int faultyMethod2(int a, int b) {
    int result;

    if((a == 0) || b > 0)) {
        result = (b / a);
    }
    else if (a < 0) {
        result = (a + b);
    }else {
       result = 0;
    }

    return result;
}