Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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#_String_List_Poker - Fatal编程技术网

C# 存储列表以外的字符串的方法<;字符串>;

C# 存储列表以外的字符串的方法<;字符串>;,c#,string,list,poker,C#,String,List,Poker,我正在开发一个扑克应用程序,目前我想存储我计划使用的所有卡片组合名称列表,并执行以下操作: private static List<string> combinationNames = new List<string> { " High Card ", " Pair ", " Two Pair ", " Three of a Kind ", " Straight ", " Flush ", " Full House

我正在开发一个扑克应用程序,目前我想存储我计划使用的所有卡片组合名称列表,并执行以下操作:

private static List<string> combinationNames = new List<string>
{
    " High Card ",
    " Pair ",
    " Two Pair ",
    " Three of a Kind ",
    " Straight ",
    " Flush ",
    " Full House ",
    " Four of a Kind ",
    " Straight Flush ",
    " Royal Flush ! "
};

for (int j = 0; j < combinationNames.Count; j++)
{
    if (current == j)
    {
        MessageBox.Show("You Have : ", combinationNames[j]);

    }
}
私有静态列表组合名称=新列表
{
“高牌”,
“配对”,
“两对”,
“三个一类”,
“直”,
“同花顺”,
“满座”,
“四个一类”,
“同花顺”,
“皇家同花顺!”
};
对于(int j=0;j

那么,有没有更好的方法来存储这些名称,并在以后像我一样访问它们呢?

在您的问题中,没有太多的内容来理解您的代码到底有什么问题。尽管如此,至少我认为以下几点会有所改善:

private readonly static string[] combinationNames =
{
    " High Card ",
    " Pair ",
    " Two Pair ",
    " Three of a Kind ",
    " Straight ",
    " Flush ",
    " Full House ",
    " Four of a Kind ",
    " Straight Flush ",
    " Royal Flush ! "
};

if (current >= 0 && current < combinationNames.Length)
{
    MessageBox.Show("You Have : ", combinationNames[current]);
}
private只读静态字符串[]组合名称=
{
“高牌”,
“配对”,
“两对”,
“三个一类”,
“直”,
“同花顺”,
“满座”,
“四个一类”,
“同花顺”,
“皇家同花顺!”
};
如果(当前>=0&¤t
即:

  • 由于列表不会更改,因此它可以是数组而不是列表
  • 由于列表对象不会更改,因此变量可以是
    readonly
  • 您使用
    j
    所做的所有代码都是将其与当前的
    进行比较;无需枚举
    j
    的所有可能值……只需确保
    current
    在有效范围内,然后直接使用其值即可
请注意最后一点,目前还不清楚从何处获取
current
,但在显示文本之前,它可能已经被保证是有效的,因此您甚至不需要进行范围检查。我只是把它放在那里,以确保上面代码的新版本与您展示的代码的行为(很少有)合理地一致


如果您需要比上述更具体的建议,请更准确地解释您认为“更好”的地方,以及您现在的代码在哪些方面不足以满足您的需求。也就是说,代码现在做了什么,与您希望它做的有什么不同?

定义“更好”。目前是什么导致您出现问题?为什么需要循环?Mb simply
combinationNames[current]
?您还没有定义什么是更好。这有点像询问是否有比锤子更好的工具——这在很大程度上取决于你是在钉钉子还是在拧螺丝——所有这些游戏都有一个价值(至少,其中一些游戏比其他游戏“更重”),因此建议使用枚举法:更高的障碍是正确地检测手中的游戏。由于您不会随着时间的推移添加到列表中,因此在这种情况下,数组可以正常工作