KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
In Python, we have the star (or "*" or "unpack") operator, that allows us to unpack a list for convenient use in passing positional arguments. For example: range(3, 6) args = [3, 6] # invokes range(3, 6) range(*args) In this particular example, it doesn't save much typing, since range only takes two arguments. But you can imagine that if there were more arguments to range , or if args was read from an input source, returned from another function, etc. then this could come in handy. In Scala, I haven't been able to find an equivalent. Consider the following commands run in a Scala interactive session: case class ThreeValues(one: String, two: String, three: String) //works fine val x = ThreeValues("1","2","3") val argList = List("one","two","three") //also works val y = ThreeValues(argList(0), argList(1), argList(2)) //doesn't work, obviously val z = ThreeValues(*argList) Is there a more concise way to do this besides the method used in val y ?
Tags (comma-separated)
Save Edits
Cancel