#10 — Классы данных, изолированные классы

Поділитись

В уроке вы научитесь создавать изолированные классы, классы данных, научитесь работать со статическими данными, а также изучите создание функций, что в качестве параметра принимают другую функцию.

Видеоурок

Изолированные классы в Kotlin являются продолжением enum-классов. Подобные классы удобно создавать если в будущем вам придется создавать объекты, что могут иметь разное количество параметров, разный функционал, но при этом они все будут объединены под одним общим классом.

В изолированных классах каждый элемент представляет из себя либо класс данных (data class), либо объект (object).

Пример класса:

sealed class Bank {
	data class Client(val age: Int, val name: String, val isRich: Boolean): Bank()
	data class Manager(val age: Int, val name: String, val status: String): Bank()

	object Filial : Bank() {
		val address = "Москва, ул. Космонавтов"
	}
}

Функции «Лямба»

В языке Kotlin можно создавать, так называемые, «Лямба»-функции, которые в качестве параметра могут принимать другую функцию.

Чтобы создать подобную функцию необходимо создать стандартную функцию, в которой указать что вы принимаете в качестве параметра функцию, что принимает какой-либо тип данных, а также возвращает в результате выполнения также тип данных. 

Пример:

fun someFunction(number: Int, numberEqual: (Int) -> String) {
	if(numberEqual(number) == "Equal")
		print("Число равное")
}

В примере мы создали функцию, что принимает число, а также другую функцию. Функция что передается в параметре может принимать число и в результате выполнения возвращает строку.


Поділитись