CSharp_10_1_使用数组和集合.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CSharp_10_1_使用数组和集合CSharp_10_1_使用数组和集合

ArrayList集合类 使用ArrayList集合类,可解决以上问题 移除元素,ArrayList将自动重新安排其元素的顺序 Add方法在ArrayList末尾添加元素,ArrayList会自动改变自身大小 Insert方法插入一个元素, ArrayList会自动改变自身大小 ArrayList例 CSharp_10_2_ArrayList Queue集合类 队列,先进先出 FIFO 入队:Enqueue 出队:Dequeue CSharp_10_3_Queue Stack集合类 堆栈,后进先出LIFO 入栈:push 出栈:Pop CSharp_10_4_Stack Hashtable集合类 数组与ArrayList均用用整数索引来映射到一个元素。能否有一个非整型的映射(其他类型如String,double,Time),其它语言叫关联数组 Hashtable(哈希表)提供了这种功能。它内部维护着两个object数组,一个容纳作为映射的来源key(键),另一个容纳映射目标的Value(值)。 Hashtable集合类 注意 Hashtable不以包含重复的key。用Add方法添加一个已有的key,会抛出异常 在内部,Hashtable是一个稀疏数据结构 使用foreach语句遍历一个Hashtable时,会返回一个DictionaryEntry CSharp_10_5_Hashtable SortedList SortedList与Hashtable非常相似,两者都允许将Key与Value关联起来,区别在于SortedList中Key总是排好序的 CSharp_10_6_SortedList The C# Programming Language 天津农学院计算机系——陈长喜 C# .NET 程序设计 Visual c# 2010从入门到精通 第10章 使用数组和集合 声明、初始化、复制和使用数组变量 声明、初始化、复制和使用各种集合类型的变量 数组的概念 数组是一个无序的元素序列 数组中的所有元素具有相同的类型(这与类、结构不同) 一个数组中的元素存储在一个连续性的内存块中,并可使用一个整数索引来访问 声明数组 类型 [] 变量名 Int[] pins; 这不像C++声明时需大小 也不像Java方括号放在变量名后 一般为数组起一个复数名词 数组是引用类型 创建数组实例 new 元素类型 [大小] 例:pins=new int[4]; 大小不一定是常量,它可在运行时计算 如: int size=int.Parse(Console.Readline()); int[] pins=new int[size]; 初始化数组 创建一个数组实例时,数组实例的所有元素都被初始化为一个默认值(0,false,null) 要修改默认值,需要在一对大括号中提供一个逗号分隔的值列表。 例: int[] pins=new int[4]{9,2,3,7}; 初始化数组 大括号中的值不一定是常量,它们可以是在运行时计算的值。 例: Random r=new Random(); int[] pins=new int[4] { r.Next()%10,r.Next()%10, r.Next()%10,r.Next()%10} 初始化数组 大括号中的值的数量必须和创建的数组实例的大小完全匹配 Int []pins=new int[3]{9,3,7,2}//Error Int[] pins=new int[4]{9,3,7} //Error Int[] pins=new int[4] {9,3,7,2}//correct 初始化数组 初始化数组时,实际上可省略new表达式和数组大小。 例 int[] pins={9,3,7,2} Time[] times={new Time(12,30), new Time(5,32) } 创建隐式数组 声明数组时,元素类型必须与声明的类型相一致,如int数组不能初始化double,string等类型 可否让编译器自动判断类型 var names=new [] {“My”,”Task”,”Xyz”} 访问单独的数组元素 用下标索引来访问 int mypins; myPin=pins[2] 遍历数组 for(int i=0;i*.Length;i++) foreach(类型 变量 in 数组名) 例: foreach(int pint in pins) { Console.WriteLine(pin) } 遍历数组 foreach总是遍历整个数组,不可是数组中的一部分; foreach总是从0~Length-1,不可倒

文档评论(0)

yyanrlund + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档