我的代码如下。
package net.ferrell.wrathoftuemdaym;
import java.awt.*;
public class Level {
public Block[][] block = new Block[50][50];
public Level() {
for(int x = 0; x < block.length; x++) {
for(int y = 0; y < block[0].length; y++);
block[x][y] = new Block(new Rectangle(x * Tile.tileSize, y * Tile.tileSize, Tile.tileSize, Tile.tileSize), Tile.air);
}
}
public void generateLevel() {
for(int x = 0; x < block.length; x++) {
for(int y = 0; y < block[0].length; y++);
if(x == 0 || y == 0 || x == block.length-1 || y == block[0].length-1) {
block[x][y].id = Tile.earth;
}
}
}
public void tick() {
}
public void render(Graphics g) {
for(int x = 0; x < block.length; x++) {
for(int y = 0; y < block[0].length; y++);
block[x][y].render(g);
}
}
}
在“block[x][y]”这一行中,y 无法解析为变量。我不知道这个问题的解决方法,而且只在这个类中存在问题。请帮我。我不明白,因为 x 可以解决...
最佳答案
这是你的罪魁祸首
for(int y = 0; y < block[0].length; y++);
应该是
for(int y = 0; y < block[0].length; y++)
就我个人而言,我总是将大括号放在代码块中,即使它只是一行。
关于java - 2D 游戏设计 - y 变量未解决?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14472340/