Java 搜索索引函数不返回值

Java 搜索索引函数不返回值,java,actionscript-3,Java,Actionscript 3,我想从列表/数组中搜索或选择特定的ITME。因此,在flash中构建AS3中的搜索功能时,我被卡住了。请帮助解决此问题…提前感谢 var ar:Array = new Array(); ar=[ "bhati", "malav", "vinod"]; //Searching Function function findIndexOfValue( array:Array, _value:* ):int { var _length:uint = array.length; for(

我想从列表/数组中搜索或选择特定的ITME。因此,在flash中构建AS3中的搜索功能时,我被卡住了。请帮助解决此问题…提前感谢

var ar:Array = new Array();
ar=[ "bhati", "malav", "vinod"];

//Searching Function
function findIndexOfValue( array:Array, _value:* ):int {
    var _length:uint = array.length;
    for(var i:uint=0; i < _length; i++) {
        if(array[i] == _value) {
            return i;
        }
        else{
            return -1;
        }
    }
}

trace(findInndexOfValue( ar, "bhati" )); // it should output 0 .
//compiler error:- 1170:Function doesn't return a value., I tried my best, but unable to solve this.
var-ar:Array=new-Array();
ar=[“bhati”、“malav”、“vinod”];
//搜索功能
函数findIndexOfValue(数组:数组,_值:*):int{
var_length:uint=array.length;
对于(变量i:uint=0;i<\u长度;i++){
if(数组[i]==\u值){
返回i;
}
否则{
返回-1;
}
}
}
跟踪(findindexofvalue(ar,“bhati”);//它应该输出0。
//编译器错误:-1170:函数未返回值。我已尽了最大努力,但无法解决此问题。

为什么要这么麻烦?此功能直接内置于AS3(以及大多数OOP语言,如果不是全部的话)中的Array类中

至于为什么脚本不能工作,您必须返回一个值。不能将所有返回都放在条件或循环中。函数的基本级别内必须有返回


编辑:只是仔细看看你的函数,它的错误不仅仅是返回。您将永远不会使其超出数组中的第一项,因为它将始终返回一个值(感谢else条件)。只需删除else位,并在for循环运行之后将其返回移动到,您就可以大致复制indexOf的工作方式了

为什么要这么麻烦呢?此功能直接内置于AS3(以及大多数OOP语言,如果不是全部的话)中的Array类中

至于为什么脚本不能工作,您必须返回一个值。不能将所有返回都放在条件或循环中。函数的基本级别内必须有返回

编辑:只是仔细看看你的函数,它的错误不仅仅是返回。您将永远不会使其超出数组中的第一项,因为它将始终返回一个值(感谢else条件)。只需删除else位,并在for循环运行之后将其返回移动到,您将大致了解indexOf的工作原理

function findIndexOfValue( array:Array, _value:* ):int {
    var _length:uint = array.length;
    for(var i:uint=0; i < _length; i++) {
        if(array[i] == _value) {
            return i;
        }
    }
    return -1;
}
函数findIndexOfValue(数组:数组,_值:*):int{
var_length:uint=array.length;
对于(变量i:uint=0;i<\u长度;i++){
if(数组[i]==\u值){
返回i;
}
}
返回-1;
}
怎么样

function findIndexOfValue( array:Array, _value:* ):int {
    var _length:uint = array.length;
    for(var i:uint=0; i < _length; i++) {
        if(array[i] == _value) {
            return i;
        }
    }
    return -1;
}
函数findIndexOfValue(数组:数组,_值:*):int{
var_length:uint=array.length;
对于(变量i:uint=0;i<\u长度;i++){
if(数组[i]==\u值){
返回i;
}
}
返回-1;
}