Pair
представляет общую пару из двух значений, представьте, что это прямоугольник с разделителем посередине.Неважно, что вы положите в каждую сторону разделителя.
Что такое Первый и Второй:
Если вы посмотрите на ответ Робса, вы увидите, чтоКласс Pair имеет два открытых значения: одно имя «first», а другое - «second».По сути, это означает, что у каждой коробки (пары) есть две стороны, и не важно, что вы положили в одну из сторон, по умолчанию я назвал одну сторону как «первую», а другую сторону как «вторую», если вы хотите что-то слева, простообращайтесь к нему как к первому, и если вы хотите что-то с правой стороны, обращайтесь к нему как к второму.
Выполнение Pair("Some Words", 99)
просто означает, что вам нужен ящик, в котором одна сторона содержит строку, а другая сторона содержит целое число.
Выполнение myPair = Pair("value 1", 100)
просто означает, что вам нужен ящик, который содержит одна сторонастрока (значение 1), а другая сторона содержит целое число (100), и вы назвали это поле myPair.
Так как Kotlin не заботится о типе вещей, которые вы кладете в коробку, чемсовершенно нормально, чтобы добавить нулевое значение в пару, например myPair=Pair(null, 99)
, ваша задача - проверить, есть ли добавленное или извлеченное нулевое значение из пары.
Получение значений:
Скажем, вы делаете что-то вроде var myPair = Pair("value 1", 100)
Если вы хотите увидеть, что у вас есть в myPair, вы можете сделать:
println(myPair.first) -> "value 1"
println(myPair.second) -> 100
Почему Pair является классом данных, а необычный класс?
Основное назначение класса данных - хранить данные.Классы данных имеют некоторые ограничения, поэтому компилятор может добавить некоторые стандартные функции ко всем классам данных, такие как eaquls (), hashCode ()
Класс Pair предназначен для хранения пары данных, поэтому он может извлечь выгоду из некоторых стандартныхфункциональность, например, toString ().
Подробнее можно прочитать ЗДЕСЬ