如何在java中创建图像数组?

时间:2013-01-28 20:42:00

标签: java arrays

我正在尝试初始化一副牌,并显示它们(我有.gif中的图像)。我遇到的唯一问题是初始化甲板本身。到目前为止,我已经尝试创建四个阵列(每个套装一个):

import java.applet.*;
import java.awt.*;

public class deckOfCards extends Applet
{
    public void init()
    {
        image clubs = new image[13];
        image hearts = new image[13];
        image spades = new image[13];
        image diamonds = new image[13];
    }
}

然后为每件衣服做这样的事情:

for( int i = 0; i <= 13; i++ )
{
    clubs[i] = getImage( getDocumentBase(), c(i).gif )
}

(卡片文件以文件名c1.gif,c2.gif ..... c13.gif保存为每件套装)

我得到一个错误,说找不到符号“image”,但java.awt.image是否有一个类来创建图像对象和图像方法?

2 个答案:

答案 0 :(得分:7)

image不是AWT包中的有效类,请将第一个字母设为大写。

您有一些语法问题:

  • I
  • 中的资金Image
  • 缺少左侧数组括号
  • 循环时不要超出Image数组的索引
  • getImage致电
  • 所需的报价

Java naming conventions表示课程以大写字母开头,您的课程也是如此:

public class DeckOfCards extends Applet {

    public void init() {

       Image[] clubs = new Image[13];
       for (int i = 0; i < clubs.length; i++ ) {
            clubs[i] = getImage( getDocumentBase(), "c" + (i + 1) + ".gif");
        }
        ...
    }
}

同样Applet是博物馆作品,已被轻量级javax.swing.JApplet取代。

答案 1 :(得分:1)

这就是你使用ArrayList Container的方式。实际上,ArrayList是一个数组,但更灵活。

ArrayList<Image> arrayName = new ArrayList<Image>();
Image imageName = getImage(getCodeBase(),"direction.jpg");
arrayName.add(imageName);