ventajas software que programacion porque por parte lenguaje desventajas descripcion curso comentarios aprender scala syntactic-sugar

software - scala lenguaje de programacion ventajas y desventajas



Azúcar de sintaxis:_* para tratar Seq como parámetros del método (2)

En general, la notación : se utiliza para la adscripción de tipo, lo que obliga al compilador a ver un valor como un tipo particular. Esto no es lo mismo que el casting.

val b = 1 : Byte val f = 1 : Float val d = 1 : Double

En este caso, usted está atribuyendo el tipo especial varargs . Esto refleja la notación de asterisco utilizada para declarar un parámetro varargs y se puede usar en una variable de cualquier tipo que subclases Seq[T] :

def f(args: String*) = ... //varargs parameter, use as an Array[String] val list = List("a", "b", "c") f(list : _*)

Acabo de ver esta construcción en algún lugar de la web:

val list = List(someCollection: _*)

¿Qué significa _* ? ¿Es esto un azúcar de sintaxis para alguna llamada a método? ¿Qué restricciones debería satisfacer mi clase personalizada para que pueda aprovechar esta sintaxis de azúcar?


Esa es la sintaxis scala para explotar una matriz. Algunas funciones toman una cantidad variable de argumentos y para pasar una matriz que necesita agregar : _* al argumento de la matriz.