# Convert Kotlin Array to Java varargs

Varargs, also known as "variable arguments" is a new mechanism in Java by which methods in Java can accept zero or multiple number of arguments. Before this mechanism, the only option available to achieve this type of functionality was "method overloading", but that also required multiple lines of boilerplate code.

In this article, we will see how we can use Varags in Kotlin to call a function multiple times based on different types of arguments. The following example demonstrates how we can use this Varags keyword.

## Example

fun main() {
// calling the function with 4 arguments and
// passing 3 arguments as recurring call to the function
val sumOf4Numbers = sum(12, sum(2, 4, 6))
println("Sum of 4 numbers: " +sumOf4Numbers)
// calling the same function with 3 arguments and
// passing 2 arguments as recurring call to the function
val sumOf3Numbers = sum(12, sum(2, 6))
println("Sum of 3 numbers: " +sumOf3Numbers)
// calling the same function with 2 arguments
val sumOf2Numbers = sum(12, 2)
println("Sum of 2 numbers: " +sumOf2Numbers)
// calling the same function without any argument
val sumOf0Numbers = sum()
println("Sum of 0 numbers: " +sumOf0Numbers)
}

fun sum(vararg xs: Int): Int = xs.sum()

## Output

Once the above piece of code is executed, it will generate the following output

Sum of 4 numbers: 24
Sum of 3 numbers: 20
Sum of 2 numbers: 14
Sum of 0 numbers: 0