0

私のコードでは、別のメソッドから取得した GObject を GObject 変数に割り当てています。

private void myMethod() {
    if (sharp < 0) {
        nextMethod();
    } else
    GObject elem = getElem();
}

private GObject getElem(){
    GObject elem;
    elem = getElementAt(xCoord, yCoord);
    return elem;
}

GObject elem = getElem();コンパイラは、それはステートメントではないと言っています。それは私には声明のように見えます。私はおそらく別の初歩的な間違いを犯しています。

何か案は?

4

1 に答える 1

0

単一行で括弧なしでelseを使用しようとしている場合は、次のようにする必要があります。

else
    GObject elem = getElem();

それ以外の場合は、ブラケットを使用してください

else
{
    GObject elem = getElem();
}

編集: 次のことをしたとき:

else
GObject elem = getElem();

以下の行elseは、else 内にない単なる新しいステートメントです。したがって、コンパイラは 内で何かを探していますelseが、何もありません。2 番目のステートメントを else 内に配置する方法でコードをインデントしていません。

于 2013-11-06T16:12:35.690 に答える