Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我可以使图片与数组中的整数对应吗?_C#_Arrays_Image_Bitmap - Fatal编程技术网

C# 我可以使图片与数组中的整数对应吗?

C# 我可以使图片与数组中的整数对应吗?,c#,arrays,image,bitmap,C#,Arrays,Image,Bitmap,所以我试着做一个21点游戏,我试着让卡片的图片与数组中的整数相对应 我有一个只有f.x的甲板阵列 int[] deck = {1,2,3} 然后我有位图形式的卡片图片 private Bitmap club3(){ return new Bitmap("Some path"); } 我可以将位图与数组中的数字相关联吗?您不能使用[Dictionary][1],因为Blackjack的10、J、Q和K的值都是10 按照Nat的建议:创建卡类: public class Card { pub

所以我试着做一个21点游戏,我试着让卡片的图片与数组中的整数相对应

我有一个只有f.x的甲板阵列

int[] deck = {1,2,3}
然后我有位图形式的卡片图片

private Bitmap club3(){
return new Bitmap("Some path");
}

我可以将位图与数组中的数字相关联吗?

您不能使用[Dictionary][1],因为Blackjack的10、J、Q和K的值都是10

按照Nat的建议:创建
类:

public class Card {
  public Card(string name, int value, Suit suit, Bitmap image) {
    Name = name;
    Value = value;
    Suit = suit;
    Image = image;
  }

  public string Name { get; private set; }
  public Suit Suit { get; private set; }
  public int Value { get; private set; }
  public Bitmap Image { get; private set; }
}

public enum Suit {
  Hearts = 1,
  Spades = 2,
  Clubs = 3,
  Diamonds = 4
}

然后,您可以使用LINQ查询可枚举的卡片(基本上是一副卡片)

Yes。。你可以使用通用字典,用一个类来表示卡片会更好。毕竟,还有一套西装、等级和价值需要保持在一起。那么,一副牌就是一组卡片。想想看,21点有10张,杰克、皇后和国王的值都是10,所以如果你用
int
对字典进行索引,那么字典就不起作用了。我还建议使用
enum
属性来表示卡片的套装,并将setters设置为私有。啊,套装是一个不错的补充。将二传设置为私有对于(远程)游戏来说是一个很好的选择(例如:你不能在以后修改你自己的
类并提交它。但是,对作者的其他游戏机制了解不够。