Używam następujący kod do moich potrzeb:Scala niezwiązany parametr zastępczy
(1 to 5)..map(i => s"\\x${i}") // Produces List("\\x1", "\\x2", "\\x3", "\\x4", "\\x5")
Ale chciałbym użyć zastępczy. Według the string interpolator documentation:
(1 to 5).map(s"\\x${_}")
powinny rozwinąć do:
(1 to 5).map(StringContext("\\\\x","").s(_))
Ale te ostatnie prace, a nie były, co rzuca error: unbound placeholder parameter
na _
. Czemu?
dodałem rozwiązania, które już było używając bezpośrednio w moim pytaniu. Chciałbym mieć więcej niż przekonania, jeśli to możliwe. 's' nie jest funkcją, jest to funkcja scala. –
@ MikaëlMayer cóż, nie, to nie jest funkcja językowa. Jest on zdefiniowany tutaj: http://www.scala-lang.org/api/current/#scala.StringContext Możesz także użyć raw "", f "" lub nawet stworzyć własne interpolatory string (json "", sql "", ...) – VasyaNovikov