- 8
- 0
- 约6.63千字
- 约 23页
- 2017-12-01 发布于湖北
- 举报
函数参数
2.9.4 参数数组 4. 参数数组 一般而言,调用方法时其实参必须与该方法声明的形参在类型和数量上相匹配,但有时候我们更希望灵活一些,能够给方法传递任意个数的参数,比如在三个数中找最大、最小和在5个数中找最大、最小甚或任意多个数中找最大、最小能使用同一个方法。C#提供了传递可变长度的参数表的机制,即使用params关键字来指定一个参数可变长的参数表。 【例4】求一组数的和 * Company Logo 2.9.4 参数数组 static void Main(string[] args) { int sum = SumVals(1, 2, 5); //任意一组数 Console.WriteLine(sum); } //参数数组,表示在一组数中返回一个特定值 static int SumVals(params int[] vals) { int sum = 0; foreach (int val in vals) { sum += val; } return sum; } * Company Logo 2.9.4 参数数组 从上面例程中可以看出设立可变参数非常方便也很实用。但在使用时要注意以下几点: (1) 一个方法中只能声明一个params参数,如果还要其他常规参数,则params参数应放在参数表的最后。 (2) 用params修饰符声明的参数是一个一维数组类型,例如,可以是int [ ], string [ ], double [ ], 或int [ ] [ ], string [ ]等,但不能是int [ , ], string [ , ]等。 (3) 由于params参数其实是一个数组,所以在调用时可以为参数数组指定零个或多个参数,其中每个参数的类型都应与参数数组的元素类型相同或能隐式地转换。 (4) 当调用具有params参数的方法时,可以作为一个元素列表(如:m.MaxMin (smax, smin, 45, 76, 89, 90 );)或作为一个数组(如:m.MaxMin (out smax, out smin, score);)传递给params参数。 (5) 无论采用哪种方式来调用方法,params参数都是作为一个数组被处理。所以在方法内可以使用数组的长度属性来确定在每次调用中所传递参数的个数。 (6) params参数在内部会进行数据的复制,不可能将params修饰符与ref和out修饰符组合起来用。所以在这个方法中即使对参数数组的元素进行了修改,在这个方法之外的数值也不会发生变化。 * Company Logo 课堂练习2 添加函数CalSum(),该函数可以计算任意个数的整型数据的和。在主函数中调用该函数,分别计算1-5的和,1-10的和。图为执行程序的结果图。 * Company Logo . L o g o L o g o L o g o Company Logo L o g o Company Logo L o g o Company Logo L o g o Company Logo L o g o Company Logo L o g o Company Logo L o g o Company Logo L o g o Company Logo L o g o Company Logo L o g o Company Logo L o g o Company Logo 2.8 函数定义 定义函数的语法 static 返回值类型 函数名(参数类型 参数1,参数类型 参数2,… …, 参数类型 参数n) { return 返回值;//这个值的类型必须和前面的返 回值类型一致 } 没有返回值的方法,返回值类型写为void,return语句可以省略或者后面不接返回值。没有参数的函数也要在函数后面写上空() 调用函数的语法 函数名(参数1,参数2,… …,参数n); * Company Logo 2.8 函数定义 例: static int Add(int num1,int num2) { return num1+num2; } static void Main() { int a=3; int b=6; int c=Add(a,b); Console.WriteLine(c); } 函数定义和调用练习 * Company Logo 2.8 函数定
您可能关注的文档
- 院及探视流程.ppt
- 留学调查问卷.ppt
- 旅游的准备.ppt
- 解说出师表 5.ppt
- 解说出师表 课堂用.ppt
- 解说凸轮机构和齿轮机构.ppt
- 解说出师表(yao).ppt
- 表复习课件 演示文稿 1.ppt
- 表—三课时.ppt
- 解说出版专业技术人员.ppt
- 广东省广州省实验中学教育集团2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州大学附属中学2025-2026学年八年级上学期奥班期中物理试题(解析版).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(含答案).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(解析版).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 2026《中国人寿上海分公司营销员培训体系优化研究》18000字.docx
- 《生物探究性实验教学》中小学教师资格模拟试题.docx
最近下载
- 2025年北京中考英语大纲课件.pdf VIP
- 加油站安全管理研究.doc VIP
- (高清版)DB42∕T 1086-2015 《森林土壤有机质的测定 分光光度法》.pdf VIP
- QBNM-PS-0011—2020汽车车身内腔防护蜡标准.pdf VIP
- 广发证券-房地产行业2026年投资策略-星垂平野阔,月涌大江流.pdf VIP
- 2026年春节复工复产安全培训开工第一课全文.ppt
- 2025年烟台汽车工程职业学院单招语文测试模拟试卷优选题库.docx VIP
- 三副实习记录簿附页(精.选).docx VIP
- 2025年信息系统安全专家多方安全计算协议专题试卷及解析.pdf VIP
- 2025年拍卖师拍卖会PPT与多媒体素材播放技术保障专题试卷及解析.pdf VIP
原创力文档

文档评论(0)