Dart映射(Map对象)是一个简单的键/值对。映射中的键和值可以是任何类型。映射是动态集合。换句话说,Map可以在运行时增长和缩小。
映射可以通过两种方式声明 -
要使用映射文字声明映射,需要将键值对括在一对花括号{}
中。
语法 -
var identifier = { key1:value1, key2:value2 [,…..,key_n:value_n] }
要使用Map构造函数声明Map。有两个步骤:首先,声明映射,然后初始化映射。
声明映射的语法如下 -
var identifier = new Map()
现在,使用以下语法初始化映射 -
map_name[key] = value
示例1:Map文字声明
void main() { var details = {'Usrname':'maxsu','Password':'passwd123'}; print(details); }
执行后,得到以下结果 -
{Usrname: maxsu, Password: passwd123}
示例2:在运行时向映射文字添加值
void main() { var details = {'Usrname':'maxsu','Password':'passwd123'}; details['Uid'] = '10086'; print(details); }
执行后,得到以下结果 -
{Usrname: maxsu, Password: passwd123, Uid: 10086}
示例3:Map构造函数
void main() { var details = new Map(); details['Usrname'] = 'admin'; details['Password'] = 'mypasswd'; print(details); }
执行后,得到以下结果 -
{Usrname: admin, Password: mypasswd}
注 - 映射值可以是包括NULL的任何对象。
dart:core包中的Map
类定义了以下属性 -
编号 | 属性 | 描述 |
---|---|---|
1 | Keys | 返回表示键的可迭代对象 |
2 | Values | 返回表示值的可迭代对象 |
3 | Length | 返回Map的大小 |
4 | isEmpty | 如果Map是空的,则返回true 。 |
5 | isNotEmpty | 如果Map不是空的,则返回true 。 |
以下是在Dart中操作Map常用的函数。
编号 | 函数 | 描述 |
---|---|---|
1 | addAll() | 向此映射添加其他所有键值对。 |
2 | clear() | 从映射中删除所有对。 |
3 | remove() | 从映射中删除键及其关联值(如果存在)。 |
4 | forEach() | 将for 应用于映射的每个键值对。 |