dictionary

C#各类集合介绍

好久不见. 提交于 2020-10-25 20:37:45
集合(Collection)类是专门用于数据存储和检索的类。这些类提供了对栈(stack)、队列(queue)、列表(list)和哈希表(hash table)的支持。大多数集合类实现了相同的接口。 平常在工作中List<T>集合是用的最多的,其次是Array(数组).今天整理一下各类形式的集合,不用就容易忘,必须要记录一下. Array Array:在内存上是连续分配的(可定义长度,也可不定义长度),Array中的元素类型要一样。 Array通过坐标(索引)访问, 读取、修改快---增删慢 如果Array定义了长度,数据项就不能超过Array中的长度范围. ArrayList ArrayList:不定长度的,连续分配的 // 元素没有类型限制 任何元素都当成object处理,如果是值类型会有装箱操作 ArrayList arrayList = new ArrayList(); arrayList.Add( " object " ); // 可以放string arrayList.Add(Enumerable.Range( 1 , 100 ).ToArray()); // 可以放Array Func< string , int > func = m => 1 ; arrayList.Add(func); // 可以放Delegate // 移除数据 arrayList

Python中OrderedDict的使用

无人久伴 提交于 2020-10-25 12:44:10
很多人认为python中的字典是无序的,因为它是按照hash来存储的,但是python中有个模块collections(英文,收集、集合),里面自带了一个子类OrderedDict,实现了对字典对象中元素的排序。请看下面的实例: 1 import collections 2 print " Regular dictionary " 3 d= {} 4 d[ ' a ' ]= ' A ' 5 d[ ' b ' ]= ' B ' 6 d[ ' c ' ]= ' C ' 7 for k,v in d.items(): 8 print k,v 9 print " \nOrder dictionary " 10 d1 = collections.OrderedDict() 11 d1[ ' a ' ] = ' A ' 12 d1[ ' b ' ] = ' B ' 13 d1[ ' c ' ] = ' C ' 14 d1[ ' 1 ' ] = ' 1 ' 15 d1[ ' 2 ' ] = ' 2 ' 16 for k,v in d1.items(): 17 print k,v 18 19 输出: 20 Regular dictionary 21 a A 22 c C 23 b B 24 25 Order dictionary 26 a A 27 b B 28 c C 29 1 1 30 2 2