Java - 类的变量标识符

时间:2013-04-19 12:31:58

标签: java

所以我有以下代码:

public static String currentLevel = "Level_1_1";
public boolean isCollingWithBlock(Point pt1, Point pt2){
    for(int x=(int)(this.x/Tile.tileSize);x<(int)(this.x/Tile.tileSize + 3);x++){
        for(int y=(int) (this.y/Tile.tileSize);y<(int)(this.y/Tile.tileSize + 3);y++){
            if(x >= 0 && y >= 0 && x < Component.Level_1_1.block.length && y < Component.Level_1_1.block[0].length){

                // blocks
                if(Component.Level_1_1.block[x][y].id != Tile.air && Component.Level_1_1.block[x][y].id != Tile.death && Component.Level_1_1.block[x][y].id != Tile.win){
                    if(Component.Level_1_1.block[x][y].contains(pt1) || Component.Level_1_1.block[x][y].contains(pt2)){
                        return true;
                    }
                }

                if(Component.Level_1_1.block[x][y].id == Tile.death){
                    if(Component.Level_1_1.block[x][y].contains(pt1) || Component.Level_1_1.block[x][y].contains(pt2)){
                        alive = false;
                        deathText = true;
                        return true;
                    }
                }

                if(Component.Level_1_1.block[x][y].id == Tile.win){
                    if(Component.Level_1_1.block[x][y].contains(pt1) || Component.Level_1_1.block[x][y].contains(pt2)){
                        win = true;
                        return true;
                    }
                }
            }
        }
    }
    return false;   
}

这是在我的Character类中查看是否存在与级别类相关的块(在本例中为1_1级)

所以因为我不想要1级,我想要超过1级所以我希望:

Component.Level_1_1

成为变量:

我目前的水平以下列方式解释:

public static String currentLevel = "Level_1_1";

在角色类中。 我试着做以下事情:

Component.(currentLevel)

但它没有用。 我能做些什么做以下工作?

编辑: 好吧有些人不明白我想做什么.. 我想要的是在isCollingWithBlock中,使Component.Level_1_1.block成为一个变量。 因为即时通讯会有以下级别:Component.Level_1_2.block,Component.Level_1_3.block等。 这应该由我的:public static String currentLevel =“Level_1_1”;

决定

1 个答案:

答案 0 :(得分:1)

正如Jon Skeet在评论中所说,你不应该逐级。相反,使用表示级别的单个类Level,并按级别创建该类的一个实例。