ich lerne Scala, aber ich bin nicht in der Lage die for-Schleife in diesem Code Trog gehenFor-Schleife Mismatch Fehlertyp in Scala
def adjacentElementsProduct(inputArray: Array[Int]): Int = {
var maxSoFar = 0
var maxHere = 0
//for (i <- 0:Int to (inputArray.length-1)) <- error
for (i <- 0 to inputArray.length-1) //<- error
{
if(maxHere * inputArray(i) > 0)
maxHere *= inputArray(i)
else
maxHere = 0
if(maxHere > maxSoFar)
maxSoFar = maxHere
maxSoFar
}
}
Compiler Ergebnisse:
(ohne: Int)
file.scala on line 6: error: type mismatch;
found : Unit
required: Int
for (i <- 0 to inputArray.length-1)
^
(mit: Int)
file.scala on line 6: error: identifier expected but integer literal found.
for (i <- 0:Int to (inputArray.length - 1))
^
file.scala on line 19: error: ')' expected but '}' found.
}
^
Was ist los? Wie kann ich es lösen?
Vielen Dank, Davide
Wenn 'maxHere' beginnt bei '0', wie kann' maxHere * inputArray (i) 'jemals'> 0' sein? – jwvh
yeah mein Fehler, ich habe es mit 1 korrigiert, sobald die for-Schleife funktioniert –