'daki bir işlevi nasıl körelttim Bir döngü için ilk parametre sabit ile List.foreach öğesinde 2 parametresi işlevini çağırmaya çalışıyorum. Bu işleriScala
private def mathFunc1(a: Double, b: Double) =
println(a + b)
def eval(v: Double) = {
List(1.0, 2.0, 3.0).foreach(mathFunc1(2.1))
}
: Aslında ben (List.foldLeft yapmak gibi)
Bu işe yaramazsa bir parametrenin bir işlevi döndüren bir parametrenin bir fonksiyonu haline iki parametrenin bir fonksiyonu köri istiyorum:
private def mathFunc2(a: Double)(b: Double) =
println(a + b)
def eval(v: Double) = {
List(1.0, 2.0, 3.0).foreach(mathFunc2(2.1))
}
Ama mathFunc1 imzasını değiştirmek istemiyoruz, bu yüzden böyle bir şey yapmak istiyorum:
private def mathFunc1(a: Double, b: Double) =
println(a + b)
def eval(v: Double) = {
List(1.0, 2.0, 3.0).foreach(CONVERT_TWO_PARAMS_TO_ONE_ONE(mathFunc1)(2.1))
}
sadece meraktan, Afedersiniz parametre v amacı budur: Çift eval? Sonuçlar her zaman 3.1, 4.1, 5.1 – jimakos17
@ jimakos17 Kullanılmamaktadır. Yine de, bu konuyla ilgili yol buydu, ben de öyle tuttum. –