zoukankan      html  css  js  c++  java
  • params简介

    params:

    使用方式:void IsParams(params object[] arr)

    说明:params修饰符主要解决形式参数是一个数组,且内容不确定的情况,params修饰符必须在()中的形参中排在最后,且不能和ref、out共用。

    举例:

    class CodeFile1:Class1
        {
            static void UseParams(params object[] list)
            {
                for (int i = 0; i < list.Length ; i++)
                {
                    Console.WriteLine(list[i]);
                }
            }
            public static void Main()
            {
                object[] ass=new object[3]{1,2,4};
                UseParams(ass);
                UseParams(3);
                Console.ReadKey();
            }
    
            
        }

    输出结果是:1

                     2

                     4

                     3

    作用:

             params关键字可以让被修饰的参数可以有任意个,只对数组,且参数必须要是最后一个参数,比如:

             void Test(params int[] ass) {。。。。 }

             当我们用这个方法时可以灵活成以下几种情况:

             Test();--为空

             Test(1);--只有一个参数

             Test(1, 2);--多个参数

             Test(new int[] { 1, 2, 3 });--数组参数

             相反,如果我们没有加params修饰符,写成void Test(int[] ass)时,我们调用Test方法只能Test(new int[]{1,2,3});或者Test(null);(这里不能写成Test(),必须写成null)。

    拓展:

    1.当我们将Test方法改写成 :

    void Test(int j,params int[] ass)
    {
      for(int i=0;i<ass.Length;i++)
      {
        Console.WriteLine((int)ass[i]+j);
       }
    }

      我们调用Test(1,2,3);会输出什么?
     

      输出结果:3

                     4

    2.  当我们将params后面的参数换成List<T>泛型集合后又是什么样子呢?

          

    void Test(int j,params List<int> ass)//报错,必须为一维数组
    {
      for(int i=0;i<ass.Count;i++)
      {
        Console.WriteLine((ass[i]+j);
       }
    }

           

  • 相关阅读:
    addEventListener、onclick和jquery的bind()、click()
    JQuery的click、bind、delegate、off、unbind
    JS的Scope
    JS对象深入剖析
    IP查找所属网段
    C#类的成员初始化顺序
    C#操作XML的完整例子——XmlDocument篇
    【开发实例】C#调用SAPI实现语音合成的两种方法
    C#打包制作安装程序过程全记录
    C# 仿制QQ弹出新闻消息框
  • 原文地址:https://www.cnblogs.com/JhoneLee/p/3066319.html
Copyright © 2011-2022 走看看