3

Dart でカスタム オブジェクトのカスタム コレクションを作成し、リストを抽象クラスとして持つ方法を理解しようとしています。カスタム コレクションにリストを「持つ」以外の方法はありません。

class MenuItemCollection {

  List<MenuItem> _items;

  MenuItemCollection() {
    _items = new List<MenuItem>();
  }

  List<MenuItem> get items => _items;
}

これを行うより良い方法はありますか?

4

2 に答える 2

3

次のようなことができます:

class MenuItemCollection implements List<MenuItem> {
  final _list = new List<MenuItem>();
  MenuItemCollection();

  noSuchMethod(InvocationMirror invocation) => invocation.invokeOn(_list);
}
于 2013-01-21T15:36:55.250 に答える
0

使用できます

リスト < E>

キュー<E>

セット<E>

または単に配列E[]

最良のアプローチは、Collection フレームワークを使用することです (したがって、最初の 3 つのオプション)。しかし、必要に応じて、再帰配列を作成することもできます。

于 2013-01-21T15:18:47.510 に答える