MATLAB 8.5基础教程
上QQ阅读APP看书,第一时间看更新

3.4 map容器

map本意是映射,可以将一个量映射到另一个量,比如将一个字符串映射为一个数值,字符串就是map的关键字(key),值就是map的该关键字的值(value),满足一一对应关系,可以通过键来快速寻访与其绑定的值。

3.4.1 map对象属性

map是MATLAB类的一个对象,它可以存储数值、字符、字符串、单元数组、结构数组等任何类型的数据,并具有3种属性,如表3-1所示。

表3-1 map类对象的属性

3.4.2 map对象的创建

1.创建map对象

【例3-7】 创建。

【例3-8】 创建一个名为map_schedule的map对象来存储表3-2所示的安排计划表。

表3-2 学生安排计划表

2.查看创建的map对象

若要查看创建的map对象内容,可以使用keys函数查看map对象中包含的所有键,利用values函数查看所有的值。例如查看【例3-7】创建的map对象只需输入命令:

查看【例3-8】创建的map对象,只需输入命令:

3.调用map对象中的内容

调用创建的map对象,可以在map名称后加上要调用的键名。

例如调用【例3-7】创建的map对象,只需输入命令:

例如调用【例3-8】创建的map对象,只需输入命令:

3.4.3 map对象的编辑

1.添加keys/values对

在一个map对象中添加新元素时,其格式如下:

例如在【例3-7】中添加“Sat”和“Sun”,其对应的值为6和7,只需输入命令:

2.删除keys/values对

从map对象中删除keys/values对,可以使用remove函数来完成,其格式如下:

例如对【例3-7】中添加键“Sat”和“Sun”之后,再删除键“Sun”的命令为:

3.修改键keys

如果在保持键值不变的情况下修改键名,需要先删除键名及对应的值,再加入更改后的新键名及对应的值。例如在【例3-8】中将“体育锻炼”由“星期五”改为“星期六”,这时在命令行窗口中只需输入:

4.修改值values

保留键名,修改键值,直接对要更改的键值修改即可。

例如对【例3-8】中的“星期三”对应的“计算机基础”改为“C语言”,只需输入: