目录
[1. 创建和打印列表](#1. 创建和打印列表)
[2. 强类型列表](#2. 强类型列表)
[3. 创建可扩展的空列表](#3. 创建可扩展的空列表)
[4. 创建填充列表](#4. 创建填充列表)
[5. 列表扩展](#5. 列表扩展)
[6. 使用可选展开操作符](#6. 使用可选展开操作符)
[7. 获取列表长度](#7. 获取列表长度)
[8. 列表反转](#8. 列表反转)
[9. 添加多个元素](#9. 添加多个元素)
[10. 移除元素](#10. 移除元素)
[11. 根据索引移除元素](#11. 根据索引移除元素)
[12. 在特定位置插入元素](#12. 在特定位置插入元素)
[13. 清空列表](#13. 清空列表)
[14. 列表合并](#14. 列表合并)
在本篇博客中,我们将探讨 Dart 编程语言中的列表(List)操作。列表是一种有序的集合,允许存储不同类型的数据。通过一段简单的代码示例,我们将逐步解析 Dart 中的列表操作。
代码示例
Dart
void main(){
List l1 = ['a','b','c'];
print(l1);
List l2 = <int>[1,2,3];
print(l2);
var l3 = new List.empty(growable:true );
l3.add(1);
print(l3);
var l4 = new List.filled(5,"qwe");
print(l4);
var l5 = [0,...l4];
print(l5);
var l6;//null
var l7 = [7,...?l6];//Text(name ?? "");
print(l7);
print(l4.length);
print(l1.reversed.toList());
l1.addAll(['w','e']);
print(l1);
l1.remove('a');
print(l1);
List l8= ['a','b','c'];
l8.removeAt(2);
print(l8);
l8.insert(1, 9);
print(l8);
l8.clear();
print(l8);
List A = ['a','b'];
print(A.join('-'));
}
代码逐段解析
1. 创建和打印列表
Dart
List l1 = ['a', 'b', 'c']; print(l1);
这段代码声明了一个名为 l1
的列表,并初始化为包含字符 'a'
、'b'
和 'c'
的集合。使用 print()
函数将该列表输出到控制台,结果为 ['a', 'b', 'c']
。
2. 强类型列表
Dart
List l2 = <int>[1, 2, 3]; print(l2);
这里声明了一个强类型的列表 l2
,它只允许存储 int
类型的元素。列表被初始化为包含数字 1
、2
和 3
,并打印出来。
3. 创建可扩展的空列表
Dart
var l3 = new List.empty(growable: true);
l3.add(1);
print(l3);
通过 List.empty(growable: true)
创建一个空的可扩展列表 l3
。随后,使用 add()
方法将数字 1
添加到列表中,输出结果为 [1]
。
4. 创建填充列表
Dart
var l4 = new List.filled(5, "qwe");
print(l4);
这段代码通过 List.filled(5, "qwe")
创建了一个长度为 5
的列表 l4
,所有元素都被初始化为字符串 "qwe"
。打印出的结果为 ['qwe', 'qwe', 'qwe', 'qwe', 'qwe']
。
5. 列表扩展
Dart
var l5 = [0, ...l4];
print(l5);
此段代码展示了列表扩展操作。通过 ...
操作符,可以将 l4
的元素添加到新列表 l5
中。l5
的输出结果为 [0, 'qwe', 'qwe', 'qwe', 'qwe', 'qwe']
。
6. 使用可选展开操作符
Dart
var l6;
// null var l7 = [7, ...?l6];
// Text(name ?? ""); print(l7);
这段代码中,l6
未初始化,默认为 null
。使用可选展开操作符 ...?
将 l6
中的元素添加到 l7
中,若 l6
为 null
,则不会添加任何元素。输出结果为 [7]
。
7. 获取列表长度
Dart
print(l4.length);
使用 length
属性获取列表 l4
的长度,输出结果为 5
,表示该列表包含 5
个元素。
8. 列表反转
Dart
print(l1.reversed.toList());
reversed
属性用于反转列表 l1
的顺序。将其转换为列表后输出,结果为 ['c', 'b', 'a']
。
9. 添加多个元素
Dart
l1.addAll(['w', 'e']);
print(l1);
使用 addAll()
方法向 l1
中添加多个元素 ['w', 'e']
。更新后的 l1
输出结果为 ['a', 'b', 'c', 'w', 'e']
。
10. 移除元素
Dart
l1.remove('a');
print(l1);
这段代码使用 remove()
方法从 l1
中移除元素 'a'
。更新后的 l1
输出结果为 ['b', 'c', 'w', 'e']
。
11. 根据索引移除元素
Dart
List l8 = ['a', 'b', 'c'];
l8.removeAt(2);
print(l8);
这部分代码演示了根据索引移除元素。removeAt(2)
将删除索引为 2
的元素 'c'
,更新后的 l8
输出结果为 ['a', 'b']
。
12. 在特定位置插入元素
Dart
l8.insert(1, 9);
print(l8);
使用 insert()
方法在索引 1
的位置插入数字 9
。更新后的 l8
输出结果为 ['a', 9, 'b']
。
13. 清空列表
Dart
l8.clear();
print(l8);
使用 clear()
方法将列表 l8
清空,输出结果为 []
,表示列表中不再有任何元素。
14. 列表合并
Dart
List A = ['a', 'b'];
print(A.join('-'));
最后一段代码使用 join()
方法将列表 A
中的元素连接成一个字符串,元素之间用 '-'
分隔。输出结果为 'a-b'
。
写在最后
通过这段代码,我们学习了 Dart 中列表的基本操作,包括创建列表、添加、移除、插入元素、清空列表及其长度、反转等功能。这些操作是开发过程中必不可少的技能,能够帮助我们更好地管理和操作数据。希望这篇博客对你理解 Dart 列表的操作有所帮助!