Основная функция main и создание дополнительных функций
В предыдущих уроках мы работали с функцией main. Это основная функция, с которой начинается выполнение программы. Помимо main, можно создавать дополнительные функции. Каждая функция должна быть написана вне другой функции, чтобы избежать конфликтов.
Для создания функции используется ключевое слово fun. Далее следует имя функции (например, sayHello), круглые скобки () и фигурные скобки {}. В круглых скобках указываются параметры, которые принимает функция.
Например, функция main принимает один параметр: args типа Array<String>. Мы рассмотрим массивы в следующих уроках. Функция sayHello не принимает параметров, поэтому круглые скобки остаются пустыми. Внутри фигурных скобок находится тело функции — код, который она выполняет. В нашем примере функция sayHello выводит на экран «Hello, World!».
fun sayHello() {
println("Hello, World!")
}
fun main(args: Array<String>) {
sayHello()
}
Для вызова функции sayHello в функции main достаточно написать её имя. При запуске программы, main вызывает sayHello, которая выводит «Hello, World!» в терминал.
Передача параметров функциям
Функциям можно передавать параметры. Для этого нужно указать тип данных каждого параметра в круглых скобках.
fun sayHello(first: String, number: Int) {
println(first)
println(number)
}
fun main(args: Array<String>) {
sayHello("Hello", 45)
}
Здесь функция sayHello принимает два параметра: first типа String и number типа Int. При вызове функции передаются значения «Hello» и 45. Функция выводит эти значения в терминал.
Функции с возвращаемым значением
Создадим функцию, которая принимает два числа и возвращает их сумму.
fun sum(x: Int, y: Int): Int {
return x + y
}
fun main(args: Array<String>) {
val result = sum(5, 10)
println(result)
}
Ключевое слово fun объявляет функцию sum. В круглых скобках определены параметры x и y типа Int. После двоеточия указан тип возвращаемого значения — Int. Функция возвращает сумму x и y с помощью return. В main результат вычисляется и выводится на экран. Для более компактного кода, оператор return можно использовать напрямую: return x + y.
fun sum(x: Int, y: Int): Int = x + y
Функции, которые не используют return, неявно возвращают Unit. Unit — специальный тип данных, обозначающий отсутствие возвращаемого значения. Его можно указывать явно, но это избыточно.
fun sayHello(first: String, number: Int): Unit {
println("$first $number")
}
Однострочные функции
Функции можно записывать в одну строку.
fun saySomething(): String = "Hello, World!"
fun main(args: Array<String>) {
println(saySomething())
}
Функция saySomething возвращает строку «Hello, World!». Её можно вызывать и использовать как показано в примере. Параметры можно добавлять, используя строковую интерполяцию:
fun saySomething(param: Boolean): String = "Hello, World! $param"
В этом уроке мы рассмотрели создание и использование функций в Kotlin, включая передачу параметров и возвращаемые значения. Функции — важная составляющая программирования, и мы будем продолжать изучать их в последующих уроках.