如何在java中为图像赋值

时间:2014-03-11 02:33:44

标签: java android

我正在制作一款适用于Android的二十一点纸牌游戏。我在为图像分配值时遇到问题。 我有52张卡片图片,我想指定一个套装/值。我不确定最好的方法是什么。

1 个答案:

答案 0 :(得分:2)

就个人而言,我会创建一个Card类,其中包含一个Image,一个字符串(或int),以及该卡的值。

例如:

public class Card {

    private String imagePath;
    private String suit;
    private int value;

    public Card(String imgPath, String suit, int value) {
        this.imagePath = imgPath;
        this.suit = suit;
        this.value = value;
    }

    public getImagePath() { return this.imagePath; }
    public getSuit() { return this.suit; }
    public getValue() { return this.value; }

}

从那里你可以使用Image而不是文件路径。真的,这取决于你想怎么做。存在用于将数据分组在一起并使其易于访问的类,因此请使用它们。

编辑:较低级别的实现是按文件的套装和值命名文件,例如'10 -Hearts.png',然后使用正则表达式或简单的解析算法来检索名称的两个部分,但这个解决方案非常笨拙:

//start adding to suit after passing a '-' character
boolean doSuit; 
String value = ""; String suit = "";
for (int i = 0; i < filename.length(); i++) {
    if (filename.charAt[i] != '-') {
        value = value + filename.charAt[i];
    } else if (doSuit && filename.charAt[i]  != '-') {
        suit = suit + filename.charAt[i];
    } else {
        doSuit = true;
    }
}

我曾经像第二个一样破解解决方案。他们并不漂亮,当他们失败时,他们会以最壮观的方式这样做。请为了上帝的爱,使用课程。