Frage

I'm having hard time trying to get nth element from the varargs sequnce in scala. Here's my code

def foo(args: String*) = args.toArray(1)

I receive error like:

error: type mismatch;
found   : Int(1)
required: scala.reflect.ClassTag[?]
     def foo(args: String*) = args.toArray(1)

What's interesting, code like this works great:

def foo(args: String*) = args.toArray.apply(1)

I'm pretty new to scala but I thought that it should be exactly the same. Is using apply right way to select nth element from vararg seq?

War es hilfreich?

Lösung

You can call apply on the input argument directly:

def foo(args: String*) = args(1)
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top