我是Scala的新手,所以想要先做簡單的事情。返回Scala For循環
我寫了一個方法如下。
//Given a list of numbers find the first number that is a multiple of 7
def FindFirstMultiple(input: List[Int]) : Int = {
for (
i <- input
if (i % 7 == 0)
)
return i
}
該方法給出錯誤
type mismatch; found : Unit required: Int
我不能夠理解這一點。當我沒有返回類型並只打印值時,它可以正常工作。 此外,爲什麼錯誤波動懸停在i <- input
。我認爲Scala編譯器試圖告訴我一些東西,但我無法理解它。這個錯誤的原因是什麼?
雖然斯卡拉確實有'return'關鍵字,它很少建議(和,我敢說,從來沒有慣用的Scala)來使用它。 –
我還是沒有看到需要downvote ....人們不會在他們問的問題中編寫慣用的javascript/clojure或任何其他語言,那麼這是否意味着我們應該減少每個問題? –
我沒有投票反對這個問題。我認爲這是一個完全有效的問題。我同意,我們在這裏引導提問者朝向好的Scala代碼,而不是因爲他們還沒有學過關於Scala的一件事而懲罰他們。 –