【发布时间】:2014-07-25 00:57:15
【问题描述】:
在寻找更新集合中条目的方法时,我发现我应该使用字典。在评论中,有人说应该注意字典不保留顺序。但是 Collection 是否保持秩序?就算你删除元素等等?
【问题讨论】:
标签: vba
在寻找更新集合中条目的方法时,我发现我应该使用字典。在评论中,有人说应该注意字典不保留顺序。但是 Collection 是否保持秩序?就算你删除元素等等?
【问题讨论】:
标签: vba
是的,Collection 保留了项目的顺序。
Dictionary 经过“优化”,可通过任意键快速访问成员。键或值没有特定的顺序,因为内容可能随时重新组织。
“简单”Collection 是对象的无序列表。它们只是以您插入它们的相同顺序存储。仅当您删除或插入项目(而不是附加它们)时,才能更改序列。
Experts Exchange 上有 a great article,它介绍了集合和字典的共性和差异以及何时使用其中一个。
为了完整起见,this SO question 讨论了数组与集合的优点(我认为我应该提到数组,因为它们在此类讨论中经常被忽略)。
【讨论】: