gpt4 book ai didi

compiler-errors - 在Flash CS4中使用数组时出现问题

转载 作者:行者123 更新时间:2023-12-02 11:05:45 25 4
gpt4 key购买 nike

我正在尝试学习数组的工作原理,遇到了一个我正在解决问题的问题。任何帮助将不胜感激。

我不断收到以下三个错误:

1176:静态类型为flash.events:MouseEvent的值与可能不相关的int类型之间的比较。

1067:将静态类型为flash.events:MouseEvent的值强制转换为不相关的Number类型。

1176:静态类型为flash.events:MouseEvent的值与可能不相关的int类型之间的比较。

var P1Numbers:Array = new Array();
var e:int=0;

function P1LowestScore(e:MouseEvent){
var P1Lowest:Number=P1Numbers[0];

for(e==1; e<P1Numbers.length; e++){
if(P1Numbers[e]>P1Lowest){
P1Lowest=P1Numbers[e];
}else{
lblPlayer1Lowest.text="ERROR!";
}
}
lblPlayer1Lowest.text="Your lowest score is "+P1Lowest+".";

}

最佳答案

嗯,您的问题是您首先将变量e定义为int,但是函数P1LowestScore也具有类型为MouseEvent的参数变量e。该变量遮盖了函数中的int e实例变量。因此,您正在将MouseEvent与P1Numbers数组的长度(一个int)进行比较。

我看到的另一个问题是您的for循环。您正在使用 bool(boolean) 表达式(e == 1)而不是赋值表达式(e = 1)。

我不确定如何在代码中调用P1LowestScore,但是我想它是通过鼠标侦听器进行的?

无论如何,只要将您的int e变量更改为其他名称(基本上是任何其他名称),您的错误就会消失。实际上,您最好在for循环声明中声明该变量,因为您不在循环之外使用它。因此:

for(i:int = 1; i<P1Numbers.length; i++){
//your code
}

关于compiler-errors - 在Flash CS4中使用数组时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13457505/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com