Junior — Middle
Jak można utworzyć strukturę danych stosu w języku Dart?
sobes.tech AI
Odpowiedź od AI
W Dart można zaimplementować strukturę danych stosu za pomocą klasy, korzystając z listy (List) do przechowywania elementów. Główne operacje stosu to dodawanie (push) i usuwanie (pop) elementów z końca listy.
class Stack<T> {
final List<T> _items = [];
void push(T item) {
_items.add(item);
}
T pop() {
if (_items.isEmpty) {
throw StateError('Stos jest pusty');
}
return _items.removeLast();
}
bool get isEmpty => _items.isEmpty;
int get length => _items.length;
}
void main() {
var stack = Stack<int>();
stack.push(10);
stack.push(20);
print(stack.pop()); // 20
print(stack.pop()); // 10
}
Ta klasa może być używana do przechowywania elementów dowolnego typu dzięki generykom.