Scala/Функції

Матеріал з Вікіпідручника

Функція, що приймає ціле x і повертає x+1

x: Int => x + 1

Функція, що повертає довжину рядка

val len: String => Int = s => s.length

Компілятор виводить тип змінної s у визначенні s => s.length виходячи із оголошення val len: String => Int. Також можливий вивід типу len із його визначення:

val len = (s: String) => s.length

Ім'я аргументу може бути за умовчанням _

val len: String => Int = _.length

Scala цілком обєктно-орієнтована мова, і ця функція еквівалента такому об'єкту

object len {
    def apply(s: String): Int = s.length
}


Джерело[ред.]