Sobes.tech
Junior — Middle

Léteznek beépített megvalósítások a Dart nyelvben a verem adatszerkezethez?

sobes.tech MI

Válasz az MI-től

A Dart nyelvben nincs külön beépített adatszerkezet, amelyet külön "verem" (stack) néven definiálnánk, mint egy önálló osztályt, de a verem megvalósítható a standard List osztály segítségével. Dartban a List támogatja az add és removeLast metódusokat, amelyek lehetővé teszik, hogy azt veremként (LIFO) használjuk.

A List alapú verem példája:

class Stack<T> {
  final List<T> _list = [];

  void push(T value) => _list.add(value);

  T pop() => _list.removeLast();

  T get top => _list.isNotEmpty ? _list.last : null;

  bool get isEmpty => _list.isEmpty;
}

Ezért a Dartban a veremmel való munkához általában a List-et használják.