gpt4 book ai didi

java - 将java图像分配给对象的不同实例(扑克牌)

转载 作者:行者123 更新时间:2023-12-02 08:06:55 26 4
gpt4 key购买 nike

我正在尝试编写一个小程序来显示卡片包以及其他内容。

我有一个文件夹,里面有 52 张卡片图像。

如何为 Card 对象的每个实例分配图像?

我需要在对象内创建一个 52 图像数组,然后为每张卡分配正确的索引吗?

谢谢

最佳答案

我建议卡片应该是一个不可变的对象。因此,我将在构建卡片时定义卡片的图像:

例如:

public class Card {
final int value;
final Suit suit;
final BufferedImage image;

public Card(int value, Suit suit) throws IOException {
this.value = value;
this.suit = suit;
File imageFile = new File("image-dir", suit + "-" + value + ".jpg");
this.image = ImageIO.read(imageFile);
}

public enum Suit {
Spades, Clubs, Diamonds, Hearts;
}
}

然后您可以像这样填充套牌:

Set<Card> deck = new HashSet<Card>();
for (int value = 1 ; value <= 13 ; value++) {
for (Suit suit : Suit.values()) {
deck.add(new Card(value, suit));
}
}

关于java - 将java图像分配给对象的不同实例(扑克牌),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8027168/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com