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*/);
    }

ドキュメントを読むと、新しい画像オブジェクトを作成するさまざまな方法があることがわかります。たとえば、スペードのエースの画像をダウンロードした場合、次のコードは 52 個のスペードのエースの配列を作成する必要があります。

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 変数を使用し、代わりにその変数を使用することを検討してください。例えば

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 に答える