熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

c#中的params關鍵字的應用

2013-11-13 10:28:06  來源: .NET編程 

  要接受未知數目的參數可以使用關鍵字params該關鍵字用於參數列表中聲明參數列表最後面的值params關鍵字與數組一起使用

  當值被傳遞給方法時編譯器首先查看是否有匹配的方法如果有則調用該方法如果沒有編譯器將查看是否有包含參數params的方法如果找到這樣的方法則使用它編譯器將這些值放到一個數組中並將該數組傳遞給方法

  下面兩個實例

  實例一使用未知數目的參數

  實例二使用params來指定多種數據類型

  實例一代碼

  using System;

  using SystemCollectionsGeneric;

  using SystemLinq;

  using SystemText;

  namespace ConsoleAppTest

  {

  public class AddEm {

  public static long Add(params int[] args) {

  int ctr = ;

  long Total = ;

  for (ctr = ; ctr < argsLength; ctr++) {

  Total += args[ctr];

  }

  return Total;

  }

  }

  class Program

  {

  static void Main(string[] args)

  {

  long Total = ;

  Total = AddEmAdd();

  ConsoleWriteLine(Total={}Total);

  Total = AddEmAdd();

  ConsoleWriteLine(Total={} Total);

  Total = AddEmAdd();

  ConsoleWriteLine(Total={} Total);

  Total = AddEmAdd();

  ConsoleWriteLine(Total={} Total);

  ConsoleRead();

  }

  }

  }

  實例二代碼

  using System;

  using SystemCollectionsGeneric;

  using SystemLinq;

  using SystemText;

  namespace ConsoleAppTest

  {

  public class Garbage {

  public static void Print(params object[] args) {

  int ctr = ;

  for (ctr = ; ctr < argsLength; ctr++) {

  ConsoleWriteLine(Argument {} is:{}ctrargs[ctr]);

  }

  }

  }

  class Program

  {

  static void Main(string[] args)

  {

  long ALong = L;

  decimal ADec = M;

  byte Abyte = ;

  string AString = Cole McCrary;

  ConsoleWriteLine(First call);

  GarbagePrint();

  ConsoleWriteLine(\nSecond call);

  GarbagePrint();

  ConsoleWriteLine(\nThird call);

  GarbagePrint(ALongADecAbyteAString);

  ConsoleWriteLine(\nFourth call);

  GarbagePrint(AStringis cool!);

  ConsoleRead();

  }

  }

  }


From:http://tw.wingwit.com/Article/program/net/201311/13747.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.