gpt4 book ai didi

用C#中的params关键字实现方法形参个数可变

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 28 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章用C#中的params关键字实现方法形参个数可变由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

例如,下面代码:  。

复制代码代码如下

class Program  {  static void Main(string[] args)  {  Console.WriteLine(Sum(1));  Console.WriteLine(Sum(1, 2, 3));  Console.WriteLine(Sum(1, 2, 3, 4, 5));  Console.ReadKey();  }  private static int Sum(params int[] values)  {  int sum = 0;  foreach (int value in values)  sum += value;  return sum;  }  }  。

实现了一个Sum方法,用于接收一组整数,并返回它们的和。参数values被加上params关键字后,在调用时可以在实参列表中列举出这组整数中的每个元素,非常方便。  关于params关键字的用法,需要注意以下几点:  1. params只能用于一维数组,不能用于多维数组和诸如ArrayList、List<T>等任何类似于数组的集合类型。  2. 被加上params关键字的形参,必须是形参列表中最后一个形参,并且方法声明中只允许一个 params 关键字。  3. 用params关键字的方法,有三种调用形式:  第一种,列举出数组各元素:Sum(1,2,3),这也是最常用的形式;  第二种,像没有加params关键字的数组形参那样,用数组名做实参:Sum(new int[]{1,2,3})或int n=new int[]{1,2,3};Sum(n);;  第三种,加params关键字的参数在调用时可以省略:Sum();//返回0;这种方式有时可以少定义一个方法重载,但当明确定义了重载int Sum()时,编译器会优先调用int Sum(),而不是Sum(params int[] values)。而且省略params型参数,方法内部仍会new一个元素个数为0的数组,效率略查。  第四种,不省略params型参数,用null代替,效率比第三种略高,因为其内部不会new这个数组.

最后此篇关于用C#中的params关键字实现方法形参个数可变的文章就讲到这里了,如果你想了解更多关于用C#中的params关键字实现方法形参个数可变的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com