当我有if()语句时,如何返回true或false的内容?

时间:2014-05-11 23:28:45

标签: java arrays boolean

我并不完全知道如何说出这一点,但我想知道如何根据下面的if语句确定的内容返回是否真实。对不起,如果你不能理解我的问题,但是如果你看一下代码,我想你会明白我在问什么。

代码

public boolean isFinished()
    {
        int row = 0;
        int column = 0;
    if(box[row][column].getValue() != 0)
            {
                if(box[row][column].getValue == box[row][column+1].getValue() && box[row][column].getValue == box[row][column+2].getValue())
                {
                    return true;
                }
                else if(box[row+1][column].getValue == box[row+1][column+1].getValue() && box[row+1][column].getValue == box[row+1][column+2].getValue())
                {
                    return true;
                }
                 else if(box[row+2][column].getValue == box[row+2][column+1].getValue() && box[row+2][column].getValue == box[row+2][column+1].getValue())
                {
                    return true;
                }
                 else if(box[row][column].getValue == box[row+1][column].getValue() && box[row][column].getValue == box[row+2][column].getValue())
                {
                    return true;
                }
                 else if(box[row][column+1].getValue == box[row+1][column+1].getValue() && box[row][column+1].getValue == box[row+2][column+1].getValue())
                {
                    return true;
                }
                 else if(box[row][column+2].getValue == box[row+1][column+2].getValue() && box[row+1][column].getValue == box[row+2][column+2].getValue())
                {
                    return true;
                }
                else
                 {
                     return false;
                 }
            }
            //return whether it's true or false
        }

3 个答案:

答案 0 :(得分:1)

您已经为true返回box[row][column].getValue() != 0。在任何这些分支中,一旦return被命中,JVM就从方法返回,而不仅仅是if语句。

现在只需在该外部if-then块中添加一个else块,它将为您的逻辑返回一些有意义的内容。

答案 1 :(得分:0)

只需在最终的if语句中测试您的getValue()方法,然后如果您获得了所需的值return true

答案 2 :(得分:0)

布尔函数总是想要最后的东西,只需将else取出并在最后它将返回false,它将起作用。如果它返回true语句,它会在它甚至在最后命中false语句之前弹出该方法。

使用if语句测试它,

if(isFinished){
    //returned true
    //blah blah do something.
}