在2D数组中搜索单个元素-Scala



我正在编写一个方法,该方法将搜索2D数组中是否存在元素(如下所示(。在写作时,我的IDE一直说Unit不接受";列";。有人能解释一下吗?提前谢谢。

def Array2DScan(elementDetect : Unit, array: Array[Unit],ArrayRow : Int, ArrayColumn: Int): Unit ={
for (row <- 0 to ArrayRow){
for(column <- 0 to ArrayColumn){
val Result = array(row)(column)
}
}
}

Unit在java和其他语言中类似于void,您不应该在函数中使用Unit,因为它的唯一可能值是"((";。我的建议是,你可以使用以下任何一种:

def arrayScanner[T](elementDetect: T, array: Array[T]) ....

或:

def arrayScanner(element: Any, array: Array[Any]) ....

我建议使用第一个,也尽量不要用于循环,并以小写字母开头命名函数和方法。

最新更新