【发布时间】:2015-02-16 04:55:32
【问题描述】:
我有名为 Country 的对象。在程序中的某个时刻,我想设置每个对象的场功率。
每个国家/地区的功率是固定的,我在一张纸上记录了所有 196 个国家/地区的数据。例如,我的代码应该检查该国家/地区的名称是否为 USA(如果是,请将其幂设置为 100)等等。
我知道我可以使用 switch-case 来做到这一点,但是最好、最好和最有效的方法是什么?
【问题讨论】:
-
使用
Dictionary<country,power>作为查找表。 -
我认为 switch 语句不会那么大。
switch (country) { case "USA": return 100; default: return 0; } -
fubo: 很抱歉吹毛求疵,但你误会国家和州了。国家是地理单位,没有权力......更重要的是,请注意,由于您有很多国家,子类化(即由其他类继承 Country)不是一种选择。但是,如果您只有几个可能的值,则可以有 Country::Weak 类、Country::Medium 类、Country::Strong 类,每个都有自己的恒定功率值。
-
感谢您的评论 :) 在我的代码中他们被称为玩家,我在这里写了国家,以便阅读的人能更好地理解!
-
你可以试一试。
标签: c# switch-statement case