- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * 孙月江 syjsdut@163.com * 第10章 使用数组和集合 本章内容 声明、初始化、复制和使用数组 声明、初始化、复制和使用各种集合类型的变量 10.1 什么是数组 数组(array)是一个无序的元素序列 数组中的所有元素都具有相同的类型 一个数组中的元素存储在一个连续的内存块中 可以使用一个整数索引来访问 数组元素的类型称作数组元素类型。也称作数组的基类型。 数组元素有时也叫索引变量.下标变量,或简单元素。 * 10.1.1 声明数组变量 一个数组类型变量在源代码中的声明方法是:指定数组元素类型并在后面跟一对空的方括号及数组名。 decimal [ ] accountBalances; 上面的声明仅仅创建了一个空容器,此容器可以表示对一个数组对象的引用。数组对象本身及它的decimal集合并没有被创建,目前也没有为它们分配存储空间 数组元素并非只能使用基本数据类型,还可以是结构、枚举或者类 Time[] times; * 提示:最好为数组变量取一个复数名称,例如:times表明数组中的每一个元素都是一个Time 10.1.2 创建数组实例 数组本身是对象,必须使用new创建数组实例 当声明一个数组变量时,不需要为对象分配内存 只有在实际创建数组实例时才需要指定数组的大小 例如: int[] pins; pins = new int[4]; 注意:数组实例的大小不一定是常量,可以运行时计算: int size = int.Parse(Console.ReadLine()); int[] pins = new int[size]; * 10.1.3 初始化数组变量 在创建数组元素的同时可以指定和赋初始值。 当一个数组被创建而没有初始值时,它的数组元素被自动分配缺省值。这些缺省值因数组的类型而异: short、int、float、decimal等为0 char类型值赋值为Unicode字符、u0000 bool类型值初始为false 引用类型初始化为null * 数组默认初始化示例: int[ ] a = new int[3]; 地址:0x1000 0 a[0] 0 a[1] 0 a[2] 3 length 0x1000 a 数组默认初始化示例: Animal[ ] a = new Animal[3]; 地址:0x1000 null a[0] null a[1] null a[2] null length 0x1000 a 手工初始化数组变量 方法:在一对大括号中提供一个以分号分隔的值列表 int[] pins = new int[4]{ 9, 3, 7, 2 }; 大括号中的值不一定是常量,可以是运行时计算的值 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 }; // compile-time error int[] pins = new int[4]{ 9, 3, 7 }; // compile-time error int[] pins = new int[4]{ 9, 3, 7, 2 }; // OK 初始化数组时,可以省略new表达式和数组的大小 int[] pins = { 9, 3, 7, 2 }; 创建一个由结构构成的数组时,为了初始化数组中的每个结构,可以调用结构构造器 Time[] schedule = { new Time(12,30), new Time(5,30) }; * 说明:初始化数组时,尽量说明数组的大小 例如:byte [ ] ages = new byte [6] { 23, 27, 21, 30, 19, 34} ; 清楚向代码阅读者声明数组的长度。 编译器将方括号中声明的数组长度与花括号中提供的初始化值数量进行比较。若相互矛盾则产生一个错误。 10.1.4 创建隐式类型的数组 如果在声明数组时指定了一个初始值列表,就可以让C#编译器自己推断数组中的元素的类型 var names = new[]{John, Diana, James, Francesca}; 注意:省略了var后的[],必须在初始值列表前添加new[] 必须保证所有初始值都具
您可能关注的文档
- LT码与q_LDPC码级联方案在深空通信中的应用.pdf
- Makefile变量使用条件和判断使用.pdf
- Mastercam后处理文件和.pdf
- MATLAB R2010b 32位与64位安装程序下载与安装步骤.docx
- MATLAB__字符串及文件操作函数.doc
- matlabcom组件.ppt
- Matlab函数定义与调用.ppt
- Matlab及C#混合编程.pdf
- matlab及C++混合编程_关于mwArray 的一些资料.docx
- matlab简易计算器设计步骤及回调函数设计.doc
- 2025年《临床执业医师》考试试卷及完整答案【全优】.docx
- 2025年《临床执业医师》考试试卷及完整答案【有一套】.docx
- 2025年《临床执业医师》考试试卷及参考答案(轻巧夺冠).docx
- 2025年《临床执业医师》考试试卷及参考答案(综合题).docx
- 2025年《临床执业医师》考试试卷及完整答案【典优】.docx
- 2025年《临床执业医师》考试试卷及完整答案【有一套】.docx
- 2025年《临床执业医师》考试试卷及完整答案.docx
- 2025年《临床执业医师》考试试卷及参考答案(突破训练).docx
- 2025年《临床执业医师》考试试卷及参考答案(研优卷).docx
- 2025年《临床执业医师》考试试卷及参考答案(达标题).docx
最近下载
- 猪主要传染性腹泻病的流行情况与防控对策.docx
- 机电工程投标方案.docx VIP
- 人教PEP版小学英语五年级 下册(1-6单元)思维导图.pdf
- 国际金融附微课杜玉兰习题答案.docx VIP
- 2023年大连大学计算机科学与技术专业《计算机系统结构》科目期末试卷A(有答案).docx VIP
- 2023年大连大学计算机科学与技术专业《计算机网络》科目期末试卷B(有答案).docx VIP
- 知识产权法智慧树知到期末考试答案章节答案2024年同济大学.docx VIP
- 临床医学教学模式创新与课堂互动设计.pptx
- 生猪屠宰兽医卫生检验人员理论考试题库资料及答案.pdf VIP
- 天津市静海区2024-2025学年高一下学期6月学生学业能力调研试题 地理试卷含答案.docx VIP
文档评论(0)