我具有使用相同参数(即相同的评分等级)的不同字段。我想使用switch语句以相同的比例返回不同字段的成绩。这样的事情。我以为会有这样的事情:switch (attend, job, initiative) {
将三个变量结合在一起。
int attend = 5;
int job = 5;
int initiative = 5;
switch (attend) {
case 1:
getattendo = 5;
break;
case 2:
getattendo = 4;
break;
case 3:
getattendo = 3;
break;
case 4:
getattendo = 2;
case 5:
getattendo = 1;
break;
default:
getattendo = 0; // null
}
感谢您的帮助。
fmk
switch(a,b,c)
之类的东西是不可能的。
但是,有解决方法。
例如,您可以为此使用质数。因为您只想switch
个数字,所以只要存在一个大于最高期望值(对于attend
,prime
和job
)的质数,就可以这样做。
使用switch(attend, job, initiative)
代替switch((attend*prime+job)*prime+initiative)
,使用case (exampleAttend, exampleJob, exampleInitiative):
代替case ((exampleAttend*prime+exampleJob)*prime+exampleInitiative):
请注意,prime
和switch
语句中的case
必须相同。
另一个选择是使用字符串。
使用switch(attend, job, initiative)
代替switch(attend+" "+job+" "+initiative)
,使用case (exampleAttend,exampleJob,exampleInitiative):
代替case (exampleAttend+" "+exampleJob+" "+exampleInitiative):
。