我正在编写游戏。我有一个 mySQL 表,其中包含几支足球队的数据。一项数据是团队的声誉。教练的薪水取决于球队的声誉。
在游戏中有一个包含所有团队名称的组合框。所以你选择的球队将决定教练的薪水。我想做这样的伪代码:
If ( "the field comboboxtext reputation" == "worldwide")
{
coach's salary = 256000
}
那么我怎样才能做到这一点呢?如果有办法在不使用的情况下做到这一点if
,我也想知道。
我正在编写游戏。我有一个 mySQL 表,其中包含几支足球队的数据。一项数据是团队的声誉。教练的薪水取决于球队的声誉。
在游戏中有一个包含所有团队名称的组合框。所以你选择的球队将决定教练的薪水。我想做这样的伪代码:
If ( "the field comboboxtext reputation" == "worldwide")
{
coach's salary = 256000
}
那么我怎样才能做到这一点呢?如果有办法在不使用的情况下做到这一点if
,我也想知道。
这不会真正帮助您,因为您基本上需要一个涵盖编程基础知识的好的C# 教程,也许是一两本好书,但是您需要的代码应该如下所示:
long coachSalary;
if (cmbReputation.SelectedText == "worldwide")
{
coachSalary = 256000;
}
我认为其他答案并不能解决手头的问题,除非我遗漏了什么。
球队的声誉和教练工资之间的关系应该存储在一个单独的 SQL 表中,如下所示:
CREATE TABLE ReputationSalary (Reputation NVARCHAR(MAX), Salary INT);
INSERT INTO ReputationSalary VALUES ('District', 10000);
INSERT INTO ReputationSalary VALUES ('State', 50000);
INSERT INTO ReputationSalary VALUES ('Nation', 100000);
INSERT INTO ReputationSalary VALUES ('Worldwide', 256000);
然后,当从组合框中选择一个团队时,使用所选的团队名称或团队 ID,您可以使用团队名称/ID 来查找教练的薪水以获取团队声誉,然后使用ReputationSalary
表格获取教练薪水。
类似(粗略的代码):-
if(combobox.SelectedText == "worldwide")
{
coach's salary = 256000;
}
如果您还需要添加 else 条件(不使用 if-else),
coach's salary= (combobox.SelectedText=="worldwide")? 256000 : some other value;
如果你想要一个更紧凑的版本来删除 if 和大括号,你可以像这样使用三元运算符:
int coachSalary = cmbReputation.SelectedText == "worldwide" ? 256000 : 0;
这意味着如果语句的第一部分,条件 (cmbReputation.SelectedText == "worldwide") 为真,coachSalary 将为 256000,否则将设置为 0。
您可以在此处查看有关三元运算符的更多信息:http: //msdn.microsoft.com/en-us/library/ty67wk28 (v=vs.110).aspx