使用不确定数目的参数(C# 与 Java)

2 篇文章 0 订阅
使用不确定数目的参数(C# 与 Java)

更新:2007 年 11 月

C# 允许您在声明某个方法时通过指定 params 关键字来向此方法发送数目不确定的参数。变量列表也可包含常规参数,但请注意:使用 params 关键字声明的参数必须放在最后。它采取长度可变的数组形式,并且每个方法只能有一个 params 参数。

当编译器试图解析某个方法调用时,它会查找参数列表与所调用的方法相匹配的那个方法。如果无法找到与参数 (Argument) 列表相匹配的方法重载,但有一个具有相应类型的 params 参数 (Parameter) 的匹配版本,则将调用此方法,将其他参数 (Argument) 放入一个数组中。

下面的示例说明了这一点:


      
      
  1. class TestParams
  2. {
  3.     private static void Average(string title, params int[] values)
  4.     {
  5.         int sum = 0;
  6.         System.Console.Write("Average of {0} (", title);
  7.  
  8.         for (int i = 0; i < values.Length; i++)
  9.         {
  10.             sum += values[i];
  11.             System.Console.Write(values[i] + ", ");
  12.         }
  13.         System.Console.WriteLine("): {0}", (float)sum/values.Length);
  14.     }
  15.     static void Main()
  16.     {
  17.         Average ("List One"51015);
  18.         Average ("List Two"51015202530);
  19.     }
  20. }
  21.  

以上示例中,方法 Average 是使用类型为整型数组的 params 参数声明的,这样您便可以用任意数目的变量来调用此方法。输出结果如下:

Average of List One (5, 10, 15, ): 10

Average of List Two (5, 10, 15, 20, 25, 30, ): 17.5

如果要允许使用不确定的不同类型的参数,可以指定 Object 类型的 params 参数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值