English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
def
}
Определение метода начинается с def Ключевые слова начинаются, за ними может следовать необязательный список параметров, за которым следует двоеточие : и тип возвращаемого значения, за которым следует знак равенства =, в конце - тело метода.
Формат определения функции Scala выглядит следующим образом:
def functionName([параметры]) : [тип возвращаемого значения] = { тело функции возврат [expr] }
В приведенном выше коде тип возвращаемого значения Это может быть любая合法ая тип данных Scala. Параметры в списке могут быть разделены запятыми.
Функции, приведенные ниже, выполняют суммирование двух传入ых параметров:
object add{ def addInt( a: Int, b: Int ) : Int = { var sum: Int = 0 sum = a + b return sum } }
Если метод не возвращает значение, он может возвращать Unitаналогичен Java: voidПример приведен ниже:
object Hello{ def printMe(): Unit = { println("Hello, Scala!") } }
Scala предоставляет различные методы вызова:
Ниже приведен стандартный формат вызова методов:
functionName( список параметров )
Если метод использует пример объекта для вызова, мы можем использовать формат, аналогичный Java (используя . ):
[instance.]functionName( список параметров )
Приведенные выше примеры демонстрируют примеры определения и вызова методов:
object Test { def main(args: Array[String]) { println( "Возвратное значение: " + addInt(5,7) ); } def addInt( a: Int, b: Int ) : Int = { var sum: Int = 0 sum = a + b return sum } }
Выполните приведенный выше код, и результат вывода будет:
$ scalac Test.scala $ scala Test Возвратное значение: 12
Scala также является функциональным языком, поэтому функции являются ядром языка Scala. Несколько концепций функций помогут нам лучше понять программирование на Scala: