scalabook

Форк
0
/
vararg-parameters.md 
51 строка · 1.2 Кб

Методы с неопределенным количеством параметров

Метод может иметь неопределенное количество параметров одного типа. Они указываются с помощью синтаксиса T*

. Пример:

def printAll(args: String*): Unit =
args.foreach(println)
printAll("Adam")
// Adam
printAll("Adam", "Bob")
// Adam
// Bob
printAll("Adam", "Bob", "Celin")
// Adam
// Bob
// Celin
printAll("Adam", "Bob", "Celin", "David")
// Adam
// Bob
// Celin
// David

Ещё пример:

val arr = Array(0, 1, 2, 3)
val lst = List(arr*)
def printList(lst: List[Int]): Unit =
lst match
case List(0, 1, xs*) => println(xs)
case List(1, _*) => println("Starts with 1")
case _ => println("Error")
printList(lst)
// List(2, 3)
printList(lst.tail)
// Starts with 1

Ссылки:

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.