У меня есть этот код:Скала Передача оператора в качестве аргумента функции
for(i <- 0 to 8){
((numbers(i) - i)/3).abs + ((numbers(i) - i)%3).abs
}
, и я хотел бы сделать, как говорит название, что-то вроде этого
for(i <- 0 to 8){
by3(numbers(i), i, /) + by3(numbers(i), i, %)
}
def by3(a: Int, b: Int, op: Int => Int) = ((a - b) op 3).abs
и, вероятно, также используйте для этого частично применимую функцию ... но к настоящему времени это можно было бы достичь? Как?
Это именно то, о чем я просил, спасибо :) – LowFieldTheory
круто с точки зрения того, насколько гибким является язык, но довольно неясный из перспективы обслуживания. Я бы не позволил этому войти в кодовую базу. – maasg