1

が機能しない理由がわかり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);
}
4

3 に答える 3

5

if(work < 60 > 0)は有効な IF ステートメントではありません。となるように書き換える必要があります。

if(work > 0 && work < 60)

ここでの他のすべてのステートメントについても同じことが言えます。

于 2013-10-15T23:08:37.167 に答える
0

howrad が言ったことの拡張:work < x > yは と同等(work < x) > yであるため、評価中はtrue > yor false < y(work < x評価後) になり、目的の範囲動作を示さない..

さて、はそれをどのように書きますか:

if(work < 60){
}else if(work < 120){
}else if(work == 120){
}else if(work < 200){
}else if(work < 401){
}else{
}

つまり、「インチ アロング」: これが機能するのは、条件が範囲全体で特定のものから一般的なものに移行し、最初に一致した条件が一連のチェックを終了するためです。

于 2013-10-15T23:12:59.997 に答える