In Scala, Repeated Method parameters are supported, which is helpful when we don’t know the number of arguments a method requires. This property of Scala is utilized in passing limitless parameters to a method defined.
Important points :
- The methods with Repeated Parameters should have each of the parameters of same type.
- A Repeated parameter is always the last parameter of the method defined.
- The method defined by us, can have only one parameter as Repeated Parameters.
Example:
// Scala program of repeated // parameters // Creating object object repeated { // Main method def main(args: Array[String]) { // Creating a method with // repeated parameters def add(x: Int*) : Int = { // Applying 'fold' method to // perform binary operation x.fold(0)(_+_) } // Displays Addition println(add(2, 3, 5, 9, 6, 10, 11, 12)) } } |
58
In order to add any number of extra parameters, we need to put * mark after the type of the parameter being used.
Some more examples of Repeated Parameters:
- An Array can be passed in the Repeated Parameter method.
Example:
// Scala program of repeated// parameters// Creating objectobjectarr{// Main methoddefmain(args:Array[String]){// Creating a method with// repeated parametersdefmul(x:Int*):Int={// Applying 'product' method to// perform multiplicationx.product}// Displays productprintln(mul(Array(7,3,2,10):_*))}}Output:420
In order to pass an array in the defined method, we need to put a colon i.e, : and _* mark after passing the values in the array.
- An example to show that Repeated Parameters are always the last parameter of the method defined.
Example:// Scala program of repeated// parameters// Creating objectobjectstr{// Main methoddefmain(args:Array[String]){// Creating a method with// repeated parametersdefshow(x:String, y:Any*)={// using 'mkString' method to// convert a collection to a// string with a separator"%s is a %s".format(x, y.mkString("_"))}// Displays stringprintln(show("GeeksforGeeks","Computer","Sciecne","Portal"))}}Output:GeeksforGeeks is a Computer_Sciecne_Portal
Here, format is used to format strings.

