0

好的,所以我真的无法弄清楚这一点。我定义了一个数组 playerPos,如下所示:

int[] playerPos = new int[]{32, 32};

第一个数字是 x 值,第二个是 y 值。但是,当我尝试用它来定义一个矩形时,我在这里得到一个语法错误:

        for (int x = 0 ; x < 64; x++) {
        for (int y = 0 ; y < 64; y++) {
            switch(map[x][y]) {
            case 1:
                mapRects[x][y] = new Rect(x - playerPos[0])*64, (y - playerPos[1])*64, ((x - playerPos[0])*64)+64, ((y - playerPos[1])*64)+64);
                break;

            case 2:
                mapRects[x][y] = new Rect(x - playerPos[0])*64, ((y - playerPos[1])*64)-64, ((x - playerPos[0])*64)+64, ((y - playerPos[1])*64)+64);
                break;
            }
        }
    }

无论我在哪里说 new Rect(),它都会在所有逗号上给我一个语法错误

Syntax error on token ",", [ expected

在最后一个数字上,它说

Syntax error, insert "]" to complete Expression

我不知道出了什么问题。帮助?

4

2 回答 2

5

这是一个括号问题:

new Rect(x - playerPos[0])*64 ...

您可能需要像这样添加一个开头:

new Rect((x - playerPos[0])*64 ...
于 2012-12-20T01:13:16.213 回答
1

您的 Rect 缺少括号。

于 2012-12-20T01:13:47.183 回答