Ответ
Стек — это структура данных, работающая по принципу LIFO (Last In, First Out). Последний добавленный элемент первым будет извлечён. В Android стеки часто используются для управления фрагментами (FragmentManager) или навигации (NavController).
Пример:
val stack = Stack<Int>()
stack.push(1) // [1]
stack.push(2) // [1, 2]
val top = stack.pop() // 2, осталось [1]
Нюансы:
- В Android
FragmentManagerиспользует back stack для управления фрагментами. - Переполнение стека может привести к
StackOverflowError. - Для многопоточности лучше использовать
ConcurrentLinkedDeque.
Видео-ответы
▶
▶
▶
▶
▶
▶
▶