我不知道为什么我的else if
不能正常工作!!!
var workSurvival:Number = 0;
var work:int = parseInt(work_txt.text);
if(work < 60 > 0){
workSurvival = work*12;
trace("work 1-" + workSurvival);
}else if(work < 120 > 60){
workSurvival = work*25;
trace("work 2-" + workSurvival);
trace(work);
}else if(work == 120){
bestScore -= 1;
trace("Good Score!");
}else if(work < 200 > 120){
workSurvival = work*8;
trace("work 3-" + workSurvival);
}else if(work < 401 > 200){
workSurvival = work*4;
trace("work 4-" + workSurvival);
}
答案 0 :(得分:5)
if(work < 60 > 0)
不是有效的IF语句。您需要将其重写为
if(work > 0 && work < 60)
这里的每一个声明都是如此。
答案 1 :(得分:0)
扩展howrad所说的内容:work < x > y
相当于(work < x) > y
,因此在评估过程中,它最终会以true > y
或false < y
结尾(在work < x
之后评估)并没有表现出所需的范围行为..
现在, I 将如何编写它:
if(work < 60){
}else if(work < 120){
}else if(work == 120){
}else if(work < 200){
}else if(work < 401){
}else{
}
即“沿着英寸”:这是有效的,因为条件在整个范围内从特定到一般,第一个匹配条件将终止检查序列。
答案 2 :(得分:0)
if语句中的条件不正确
将其更改为
if(work>0&&work<60)
代替if(work < 60 > 0)
else if(work>60&&work<120)
代替else if(work < 120 > 60)
else if(work>120&&work<200)
代替else if(work < 200 > 120)
if(work>200&&work<401)
代替else if(work < 401 > 200)
并且您的代码应该可以正常工作