如果变量可以取n个值,我们应该检查值的有效性,或者假设如果所有ni检查都失败则它将是第n个值.
例如,如果我们有一个将性别存储为M或F的变量.使用此:
If gender = "M"
do male_processing
else
do female_processing
endif
Run Code Online (Sandbox Code Playgroud)
或这个:
If gender = "M"
do male_processing
else
if gender = "F"
do female_processing
else
print "Something has gone wrong Gender has a value " Gender
endif
endif
Run Code Online (Sandbox Code Playgroud)
bli*_*app 10
对于那个例子,我根本不会使用IF,我会使用SWITCH作为你的第二个例子
switch (gender)
case "M":
do male_processing
break
case "F":
do female_processing
break
default:
print "Something has gone wrong Gender has a value " Gender
endswitch
Run Code Online (Sandbox Code Playgroud)
或者对于您的第一个示例,我只是使用ASSERT将异常视为错误
assert (gender = "M" or gender = "F")
Run Code Online (Sandbox Code Playgroud)
对于这种类型的构造,我喜欢使用 switch 语句。不是因为它更短(事实并非如此),而是因为它更具可读性(恕我直言):
switch(gender) {
case "M":
doMaleSpecificStuff();
break;
case "F":
doFemaleSpecificStuff();
break;
default:
throw AnyError;
}
Run Code Online (Sandbox Code Playgroud)