Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java GObject不是一个语句错误_Java - Fatal编程技术网

Java GObject不是一个语句错误

Java GObject不是一个语句错误,java,Java,在我的代码中,我将从另一个方法获得的GObject分配给GObject变量 private void myMethod() { if (sharp < 0) { nextMethod(); } else GObject elem = getElem(); } private GObject getElem(){ GObject elem; elem = getElementAt(xCoord, yCoord); return

在我的代码中,我将从另一个方法获得的GObject分配给GObject变量

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

private GObject getElem(){
    GObject elem;
    elem = getElementAt(xCoord, yCoord);
    return elem;
}
private void myMethod(){
如果(夏普<0){
nextMethod();
}否则
GObject elem=getElem();
}
私有GObject getElem(){
戈伯特元素;
elem=getElementAt(xCoord,yCoord);
返回元素;
}
编译器告诉我,
GObject elem=getElem()不是一条语句。在我看来,这是一个声明。我可能又犯了一个新手错误


有什么想法吗?

如果你想用一行没有括号的else,那么它必须是这样的:

else
    GObject elem = getElem();
否则,只需使用括号

else
{
    GObject elem = getElem();
}
编辑: 当您执行以下操作时:

else
GObject elem = getElem();

else
下面的一行只是一条新语句,它不在else中。因此,编译器正在您的
else
中查找某些内容,但没有任何内容。您没有以将第二条语句放入else的方式缩进代码

如何声明getElem()方法?发布完整的类。从你发布的代码中我看不出有什么问题。这完全一样,第二个更易于阅读。@marounnaroun是的,它是一样的。第二种方法在可读性方面要好得多,而且不容易出错。我只是想指出,他可以用两种方式做到这一点。确实如此,但这并不能回答OP的问题。@Marounnaroun我认为这就是问题的根源。除非他把问题中的代码格式化不正确。你为什么这么认为?这两种说法完全相同。