Какие знаешь ограничения у Stack

«Какие знаешь ограничения у Stack» — вопрос из категории Алгоритмы и структуры данных, который задают на 24% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Stack в Android — это структура данных LIFO (Last In, First Out). Основные ограничения:

  1. Фиксированный размер — при инициализации требует указания capacity, иначе может вызвать StackOverflowError при переполнении.
  2. Нет thread-safety — не синхронизирован, для многопоточности нужны внешние механизмы.
  3. Устаревший класс — рекомендуется использовать ArrayDeque или LinkedList, которые эффективнее.

Пример:

val stack = Stack<Int>()
stack.push(1)
stack.push(2)
val top = stack.pop() // 2