Sobes.tech
Junior — Middle

Czy można zadeklarować zmienną val (first, second) za pomocą obiektu pair, gdzie pair jest klasą Pair<String, String>?

sobes.tech AI

Odpowiedź od AI

W Kotlinie (głównym języku dla Androida) można zadeklarować zmienną z destrukturyzacją obiektu, jeśli klasa obsługuje funkcje componentN.

Klasa Pair<String, String> już implementuje te funkcje, więc można napisać:

val pair = Pair("pierwszaWartość", "drugaWartość")
val (pierwszy, drugi) = pair
println(pierwszy)  // pierwszaWartość
println(drugi) // drugaWartość

W ten sposób deklaracja val (pierwszy, drugi) = pair jest możliwa i poprawna, jeśli pair jest obiektem klasy Pair<String, String>. To wygodny sposób od razu uzyskać dostęp do elementów pary.