Обычно обозначение :
используется для определения типа, заставляя компилятор видеть значение как некоторый конкретный тип.Это не совсем то же самое, что и приведение.
val b = 1 : Byte
val f = 1 : Float
val d = 1 : Double
В этом случае вы приписываете специальный тип varargs .Это отражает обозначение звездочки, используемое для объявления параметра varargs, и может использоваться для переменной любого типа, которая подклассов Seq[T]
:
def f(args: String*) = ... //varargs parameter, use as an Array[String]
val list = List("a", "b", "c")
f(list : _*)