Dart 编程中的列表


Dart 中的列表是可索引的对象集合。它们可以包含相同类型或不同数据类型对象。我们还可以创建固定长度的列表或可增长的列表。

Dart 中的列表是基于 0 索引的。

Dart 中主要有两种类型的列表:

  • 固定长度列表

  • 可增长列表

在接下来的文章中,我们将探讨这两种类型的列表。

固定长度列表

顾名思义,固定长度列表无法增长。也不允许将其大小修改为其他值。

示例

请考虑以下示例:

void main(){
   var fixedLengthList = List.filled(5, 3);
   print(fixedLengthList);
}

在上面的代码中,我们告诉编译器我们想要一个包含 int 数据值的列表,并且我们希望用默认值“3”填充五个索引。

输出

[3, 3, 3, 3, 3]

我们还可以使用 Dart 中列表类的 length 属性计算列表的长度。

示例

请考虑以下示例:

void main(){
   var fixedLengthList = List.filled(5, 3);
   print(fixedLengthList.length);
}

输出

5

访问和更改列表元素也是可能的。我们使用方括号表示法访问列表元素,并且也使用方括号表示法更改特定索引处的值。

示例

请考虑以下示例:

void main(){
   var fixedLengthList = List.filled(5, 3);
   print(fixedLengthList[0]); // accessing the 0th index element
   fixedLengthList[0] = 99; // changing the element at 0 index
   print(fixedLengthList);
}

输出

3
[99, 3, 3, 3, 3]

需要注意的是,如果我们尝试向列表中插入任何元素或以任何方式尝试更改列表的长度,编译器将抛出错误。

示例

请考虑以下示例:

void main(){
   var fixedLengthList = List.filled(5, 3);
   print(fixedLengthList.add(100));
   print(fixedLengthList);
}

输出

Error: This expression has type 'void' and can't be used.
   print(fixedLengthList.add(100));
                           ^
Error: Compilation failed.

可增长列表

我们可以通过以下方式创建一个可增长的列表:

示例

实时演示

void main() {
   var growableList = [1, 2, 3];
   print(growableList);
}

输出

[1, 2, 3]

我们可以访问和更改特定列表索引处的值,而不会出现任何问题。

示例

请考虑以下示例:

实时演示

void main() {
   var growableList = [1, 2, 3];
   growableList[1] = 99;
   print(growableList[0]);
   print(growableList);
}

输出

1
[1, 99, 3]

我们也可以根据需要添加任意数量的元素,而无需像在固定长度列表中那样遇到任何错误。

示例

请考虑以下示例:

实时演示

void main() {
   var growableList = [1, 2, 3];
   growableList.add(3);
   growableList.add(5);
   growableList.add(10);
   print(growableList);
}

输出

[1, 2, 3, 3, 5, 10]

更新于: 2021年5月21日

592 次查看

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.