如何在Java中将对象添加到对象?

时间:2015-04-09 21:27:08

标签: java image

我试图将正确的图像添加到每个卡片对象中,但我似乎无法让它工作。我试图将它合并到我的fillDeck()方法中,但不确定最好的方法是什么。

这是我得到的:

public void fillDeck() {
    Iterator suitIterator = CardSuit.VALUES.iterator();
    while(suitIterator.hasNext()) {
        CardSuit suit = (CardSuit) suitIterator.next();
        Iterator rankIterator = CardValue.VALUES.iterator();

    while(rankIterator.hasNext()) {
        CardValue value = (CardValue) rankIterator.next();  

        /* This is the problem area :L */
        String imageFile = imageLocation + Card.getImageFilename(suit, value);
        ImageIcon image = new ImageIcon(getImage(getCodeBase(), imageFile));
       /* --------------------------- */

        Card card = new Card(suit, value, image);
        addCard(card);
    }}}

图像位置初始化为:private final String imageLocation = "cardImages/";

和getImageFilename如下:

public static String getImageFilename( CardSuit suit, CardValue value ) {
    return suit.getSuitAcronym() + value.getValueAcronym() + ".png";
}

我正在检查imageIO,但不太确定如何实现这一点。此处也是我的文件树,可能是我将图片文件夹放在错误的位置:http://i.stack.imgur.com/Jt6po.png

所以是的,对于长篇文章感到抱歉,希望有人可以提供一些有关我应该如何解决这个问题的见解,或者你是否能发现一些错误。

1 个答案:

答案 0 :(得分:0)

使用Java加载图像:

BufferedImage image = null;

try{
    image = ImageIO.read(new File("location.png"));
} catch(Exception e){e.printStackTrace();}