有时我有一个应返回true或false的函数。但是有时三个可能的值会更有意义。
在某些语言中,这些情况将使用整数或例外进行处理。
例如,如果用户年龄超过18岁,则要处理该用户的年龄。而且您具有这样的功能。
if(user.isAdult(country_code)){
//Go On
}else{
// Block access or do nothing
}
但是在某些情况下,取决于您的应用程序的构建方式,我可以看到生日字段不完整的情况。然后,此函数应返回未确定的内容。
switch(user.isAdult()){
case true:
// go on
break;
case undetermined:
//Inform user birthday is incomplete
case false:
//Block access
}
正如我说过的,我们可以使用Exceptions和Int来处理它,但是我发现在语言中嵌入一个true,false,undefinedtermed而不是使用一些内部定义的常量是很性感的。