0

我希望将 52 张卡片图像链接到一个数组,但不单独添加它们。我在想像创建一个数组并使用这样的一段代码。

Image[] card;
card = new int[52];
for (int c = 1; c<=52;c++)
{
    card[c] = 
}  

我不确定如何继续,但文件中的卡片标记为 1-52,所以我认为这将是创建卡片值的更简单方法(也是给老师留下深刻印象的更好方法)。我想我可能还必须更改排名系统并使用它。我正在为图形使用 slick2d。

如何使用那段代码(或另一段代码)将图像分配给变量?

4

1 回答 1

1

查看http://www.slick2d.org/javadoc/上的 slick2d javadoc并找到您尝试使用的 Image 类。

试试这个代码

Image[] card = new Image[52];
for (int i = 0; i < 52; i++)
    {
        card[i] = new Image(/*insert constructors here*/);
    }

如果您阅读文档,您会发现有许多不同的方法可以创建新的图像对象。例如,我下载了一张黑桃 A 图像,下面的代码应该创建一个包含 52 个黑桃 A 的数组

Image[] card = new Image[52];
String fileLocation = "C:\\Users\\con25m\\Pictures\\ace_spades.jpg";
for (int i = 0; i < 52; i++)
    {
        card[i] = new Image(fileLocation);
    }

您可以查看 slick2d 是否具有标准 52 套牌中所有卡片的图像,或者自己下载每张卡片的图像,为图像提出命名约定,然后在 forloop 中更新 fileLocation 字符串。例如

Image[] card = new Image[52];
String fileLocation = new String();
for (int i = 0; i < 52; i++)
    {
        fileLocation = "C:\\Users\\con25m\\Pictures\\" + i + ".jpg";
        card[i] = new Image(fileLocation);
    }

注意:不要一直使用数字 52,而是考虑使用最终变量并使用该变量。例如

final int NUMBER_OF_CARDS = 52;
Image[] card = new Image[NUMBER_OF_CARDS];
for (int i = 0; i < NUMBER_OF_CARDS; i++)...
于 2013-01-14T06:16:33.860 回答