c# 方法可变数量的参数
时间:2023-10-06 07:31:21
声明一个可变数量的参数:
Static int Add(params int[] values)
{
int sum = 0;
if(value != null)
{
for(int x = 0;x<values.Length;x++)
sum += values[x];
}
return sum;
}
上面这个方法除去params,是一个普通的方法,接受int数组,返回组中的所以项之和。
我们可以这样调用:Add(new int[]{1,2,3});
但是阅读性不是很高,我们希望能更简洁:
Add(1,2,3);
这时,由于params关键字,是可以编译通过和运行的。
params只能应用于方法参数中的最后一个。
在c#编译器发现Add(1,2,3)时,会先寻找是否有Add(int i,int j,int k)匹配的方法,
如果有就调用,没有,就寻找是否有定义为Add(params int[] values)的方法,
如果有就把1、2、3先保存到一个数组里,然后调用Add(int[] values)方法。
这里也说明CLR对params关键字是一无所知的,params只是提供给c#编译器使用的。
标签:数量,参数
0
投稿
猜你喜欢
使用Jackson反序列化遇到的问题及解决
2023-11-13 21:12:14
Java把数字格式化为货币字符串实例代码
2022-10-13 23:17:27
利用Thumbnailator轻松实现图片缩放、旋转与加水印
2022-03-26 18:44:04
Java 实现repalceAll只替换第二个匹配到的字符串
2021-06-12 11:56:20
Java在Excel中创建透视表方法解析
2021-11-03 05:49:45
Unity中C#和Java的相互调用实例代码
2022-02-28 13:40:53
利用C#9.0新语法如何提升if语句美感
2021-06-15 12:48:54
一文搞懂String的intern()方法
2022-05-28 12:05:35
SpringBoot实现单文件与多文件上传功能
2023-03-22 23:44:11
基于struts2和hibernate实现登录和注册功能
2022-03-23 00:27:43
Android开发环境安装和配置图文教程
2023-08-04 16:58:26
Spring自动装配Bean实现过程详解
2023-10-31 18:35:21
Android触屏测试实例代码
2023-05-30 07:15:08
Java算法设计与分析分治算法
2022-04-02 08:07:15
Java 守护线程_动力节点Java学院整理
2023-11-28 07:51:14
Android基于TextView属性android:ellipsize实现跑马灯效果的方法
2022-09-28 15:59:55
IntelliJ IDEA安装插件阿里巴巴Java开发手册(Alibaba Java Coding Guidelines)
2023-10-17 11:30:02
Java修饰符 abstract,static,final 的区别详解
2023-12-19 22:11:25
java使用dom4j生成与解析xml文档的方法示例
2022-06-18 23:41:56
dotnet core链接mongodb代码实例
2023-07-20 14:26:09