Params는 C#에서 매우 중요한 키워드입니다. 인수의 개수를 변수로 주고 싶을 때 param을 사용했습니다. 그래서 개발자가 사용될 매개변수의 개수를 모를 때 사용됩니다. C# Params 키워드 뒤에는 함수에 추가 매개변수가 허용되지 않습니다. 인수를 전달하지 않으면 params의 길이는 0으로 유지됩니다. 쉼표로 구분된 값이나 배열을 보낼 수 있습니다.
키워드: params
using System; namespace Examples { class Test { // function containing params parameters public static int Addittion(params int[] ListNumbers) { int total = 0; // foreach loop foreach(int i in ListNumbers) { total += i; } return total; } // Driver Code static void Main(string[] args) { // Calling function by passing 5 // arguments as follows int y = Addittion (12,13,10,15,56); // Displaying result Console.WriteLine(y); } } }
출력:
params 키워드 사용:
static public int add(params int[] args) { int add1 = 0; foreach (var item in args) add1= add1+item + 2; return add1; }
매개변수 없음 키워드:
static public int add(int[] args) { int add = 0; foreach (var item in args) add1 = add1+item + 2; return add1; }
param을 사용하면 add(1,4,5)와 같은 메소드를 호출할 수 있지만 param이 없으면 호출할 수 없습니다.
다음 예는 C#에서 매개변수를 구현하는 방법을 보여줍니다.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Params { class Demo { public void Show(params int[] num) // Params Paramater { for (int a = 0; a < num.Length; a++) { Console.WriteLine(num[a]); } } static void Main(string[] args) // main function { Demo program = new Demo(); // Creating Object program.Show(20, 4, 64, 3, 20, 2, 14); // Passing arguments of variable length Console.ReadLine(); } } }
위의 예에서는 param 키워드가 사용되어 모든 유형과 개수의 유형을 허용합니다. 그런 다음 객체를 생성한 후 표시할 여러 인수를 전달합니다.
출력:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Params { class Demo { public void Show(params object[] val) // Params Paramater { for (int a = 0; a < val.Length; a++) { Console.WriteLine(val[a]); } } static void Main(string[] args) // main method { Demo program = new Demo(); // Creating Object program.Show("Javascript", "Dotnet", 11, 10.50, "Param", 'h',"Example"); // Passing arguments of variable length Console.ReadLine(); } } }
위의 예에서는 param 키워드가 사용되어 모든 유형과 개수의 유형을 허용합니다. 객체를 생성한 후 표시할 여러 인수를 전달합니다. 여기에서 다양한 데이터 유형의 인수를 볼 수 있습니다.
출력:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Params { class Demo { public static int Addition(params int[] num) // params parameter { int add = 0; // foreach loop foreach (int a in num) { add += a; } return add; } static void Main(string[] args) { int x = Addition(23, 45, 2, 36, 76); // call function // Displaying result Console.WriteLine(x); Console.ReadLine(); } } }
위의 예에서는 배열이 사용되었으며, 인수의 유형과 수에 제한이 없는 param 키워드가 사용되었으므로 배열의 크기를 언급할 필요가 없습니다. 숫자는 다음 형식을 따릅니다.
[0] 25출력:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Params { class Demo { static void Main() { // Call params method with five integer type arguments int cal1 = calParameters(7); int cal2 = calParameters(11, 23); int cal3 = calParameters(46, 8, 45); int cal4 = calParameters(23, 31, 21, 45); int cal5 = calParameters(12, 12, 54, 76); // display result of each calculations Console.WriteLine(cal1); Console.WriteLine(cal2); Console.WriteLine(cal3); Console.WriteLine(cal4); Console.WriteLine(cal5); Console.ReadLine(); } static int calParameters(params int[] values) { int sum = 0; foreach (int value in values) // foreach loop and sum of integers { sum += value; } return sum; } } }
위 예에서는 param 키워드가 사용되는 인수가 5개 있습니다. 모든 인수는 정수 유형입니다. foreach 루프는 각 인수의 합계를 표시하는 데 사용됩니다.
출력:
public void test(params int[] args) { } test(); // no compile-time error, args will be empty
그러나 배열을 사용하는 경우:
public void test(int[] args) { } test(); // error: No overload for 'Foo' takes 0 arguments
따라서 인수를 전달하지 않으면 매개변수의 길이는 0으로 유지됩니다. Param 키워드는 매개변수 목록의 마지막에 있어야 합니다. 그렇지 않으면 오류가 발생합니다.
예:
public void test(params int[] args,int value) { }
이런 선언은 허용되지 않습니다.
위 내용은 C# 매개변수의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!