如何根据用户的组合框选择使用词典来操作变量?

时间:2014-01-09 02:52:12

标签: c# dictionary

这是我的字典代码。

int numOfPlayers;
double multiplier;

Dictionary<string, Stats> games = new Dictionary<string, Stats>();
games.Add("Runescape", new Stats(1.5, 20));
games.Add("Maplestory", new Stats(1.0, 25));
games.Add("League of Legends", new Stats(1.3, 15));

这是我的统计类

class Stats
{
    public double Muliplier { get; private set; }
    public int NumberOfPlayers { get; private set; }

    public Stats(double multiplier, int numberOfPlayers)
    {
        Muliplier = multiplier;
        NumberOfPlayers = numberOfPlayers;
    }
}

由于我对字典的了解不多,我如何使用它,以便根据用户在组合框中选择的内容设置我的变量值?

例如:如果用户选择“Runescape”,则可以帮助我将numOfPlayers的值设置为20,将multiplier设置为1.5。

1 个答案:

答案 0 :(得分:2)

您可以使用类似数组索引器访问权从Dictionary获取数据:

string name = "Runescape";
Stats stat = games[name];

但是,如果没有与给定name关联的项目,则会抛出异常。您可以使用TryGetValue来处理这种情况:

Stats stat;
if(games.TryGetValue(name, out stat))
{
    // stat found within the dictionary
}