所以我有枚举称为地形
public enum Terrain {
DIRT(4, "res/imgs/DirtTile.png"), GRASS(5, "res/imgs/GrassTile.png");
private String filePath;
private Image image;
private boolean imageLoaded;
private int value;
Terrain(int val, String imagePath) {
value = val;
filePath = imagePath;
imageLoaded = false;
}
public Image getImage() {
if (!imageLoaded) {
loadImage();
}
return image;
}
public void loadImage() {
try {
image = ImageIO.read(new File(filePath));
} catch (IOException e) {
System.err.println("Failed to load image!");
e.printStackTrace();
}
imageLoaded = true;
}
}
我想要的是能够将 int 与地形值进行比较,这样如果它相等,则地形将被绘制到屏幕上。
我在想类似的东西
if(int==Terrain.value){}
但我真的不知道该怎么做。如果有人可以帮助我解决这个问题,我有一个 int 数组,我想将它与它进行比较,如果它确实等于该值,我将该图块存储在一个单独的图像数组中。
编辑:
对于那些说我应该使用 getValue() 方法的人,我想将我的值与所有 Enums 的东西进行比较,如果它等于(例如,等于 4,那么我可以将我的图像设置为污垢)。
我正在另一个班级检查这个。