首页 > 解决方案 > Dart如何声明列表的可增长列表

问题描述

我想初始化一个可增长的列表列表。外部列表和所有内部列表都应该是可增长的。我尝试了以下方法,但它们不起作用。

List<List<String>> fixturesOfLeagues = List<List<String>>();
List<List<String>> fixturesOfLeagues = [];
List<List<String>> fixturesOfLeagues = [[]];

知道怎么做吗?

标签: dart

解决方案


如评论中所述,您需要分别创建每个列表并将它们添加到列表列表中。

根据文档,默认情况下它们是可增长的:

由 new List() 或 [] 返回的默认可增长列表保留一个内部缓冲区,并在必要时增长该缓冲区。

上面代码的使用示例:

void main() {

  List<List<String>> fixturesOfLeagues = List<List<String>>();

  for (int i=0; i < 5 ; i++){
    List<String> ListToBeAdded = ['$i'];
    fixturesOfLeagues.add(ListToBeAdded); //create a list and adds to the outter list.
  }

  print(fixturesOfLeagues);

  fixturesOfLeagues[2].add('test');

  print(fixturesOfLeagues);
}

哪个输出:

[[0], [1], [2], [3], [4]]
[[0], [1], [2, test], [3], [4]]

推荐阅读