首先,我喜欢枚举他们的定义更具表现力,特别是因为它们可以被命名,这是对真与假的改进。是的,我知道我对蹦床这个词的使用是错误的99%,但这个例子真的像蹦床一样。
if( flag ) {
flagOn();
} else {
flagOff();
}
if( flag == FlagEnum.ON ) {
flagOn();
} else {
flagOff();
}
void start(){
flag.start(this).
}
void startOn(){
}
void startOff() {
}
Enum {
ON {
start(X that ){ that.startOn() };
}
OFF {
start(X that ){ that.startOff() };
}
start( X that );
}
我喜欢最后一种形式,但是在紧凑的循环情况下它是更昂贵还是相同?