java boolean方法返回语句

时间:2013-09-25 22:28:32

标签: java methods boolean return

我正在尝试编写一个游戏,我正在制作方法来检查玩家的不同侧面的地形。我正在使用布尔方法,但netbeans告诉我我没有返回语句。

public boolean checkTerrainDown(Level levelToCheck){
    for(Terrain terrainToCheck: levelToCheck.levelTerrain){
        if(y+h<terrainToCheck.getY()){
            return true;
        }else{
            return false;
        }
    }
}

3 个答案:

答案 0 :(得分:6)

如果没有Terrain可以检查怎么办?然后for循环的主体永远不会被执行。在return循环之后,您没有for语句来说明此情况。在这种情况下,你会有什么Java返回?

return循环后放置for语句,以处理Terrain Level中没有levelTerrain的情况。这样,每个可能的执行情况都会return

答案 1 :(得分:1)

如果for loop没有执行,那么就不会执行return语句。

答案 2 :(得分:1)

public boolean checkTerrainDown(Level levelToCheck){
        //add this line
        boolean mark = false;
    for(Terrain terrainToCheck: levelToCheck.levelTerrain){
        if(y+h<terrainToCheck.getY()){
                //add this line,remove this //return true;
            mark = true;
            //add this line
            break;
        }
        //else{
            //return false;
        //}
    }
    //add this line
    return mark;
}