我正在制作一个二十一点项目 - 到目前为止,我已经制作了 switch case 场景以生成随机数 - 但现在我想要么 A.) 为所有这些创建一个计算类 - 或者我应该 B.) 做这个计算通过按钮?
创建一个 calc 类是有意义的,但是我的变量范围不在,所以我不得不在按钮内进行。
然而,这不是我的主要关注点;我想将开关案例“Hit.GenerateID(stRefID)”的第一个实例与它的第二个实例一起添加。
但是我不确定如何以编程方式使用 new 来区分两者,所以我得到的结果是 (2) = 22。
打击类:
namespace Blackjack
{
public class Hit
{
public static string GenerateID(string stRefID)
{
Random random = new Random();
int iChosenMaxSize = random.Next(1, 1);
int two = 2;
int three = 3;
int four = 4;
int five = 5;
int six = 6;
int seven = 7;
int eight = 8;
int nine = 9;
int ten = 10;
int jack = 10;
int queen = 10;
int king = 10;
int ace = 11;
for (int x = 1; x <= iChosenMaxSize; x++)
{
int iCharType = random.Next(0, 12);
switch (iCharType)
{
case 0:
stRefID += two;
break;
case 1:
stRefID += three;
break;
case 2:
stRefID += four;
break;
case 3:
stRefID += five;
break;
case 4:
stRefID += six;
break;
case 5:
stRefID += seven;
break;
case 6:
stRefID += eight;
break;
case 7:
stRefID += nine;
break;
case 8:
stRefID += ten;
break;
case 9:
stRefID += ace;
break;
case 10:
stRefID += jack;
break;
case 11:
stRefID += queen;
break;
case 12:
stRefID += king;
break;
}
} return stRefID;
}
}
}
按钮:
private void hit_Click(object sender, EventArgs e)
{
string stRefID = "";
this.playerScore.Text = Hit.GenerateID(stRefID);
int cardOne;
cardOne = Convert.ToInt32(this.playerScore.Text);
int cardTwo;
cardTwo = new Hit.GenerateID(stRefID);
this.test.Text = cardTwo.ToString() + cardOne;
}