Home [C# 筆記] params
Post
Cancel

[C# 筆記] params

params 可變動參數

  • params 的參數的個數不一定,可以0~n個。
  • params 的參數類型,一定是一維陣列。(int[], string[]…)
  • params 可變動參數,一定要放在最後一個。
  • params参数不能用refout,且不能手動給默認值。

params 可變動參數最大的優勢就是,可以傳遞一個不確定個數的集合類型(只能是一維陣列),而且不用單獨宣告變數類型去包裝,可以在呼叫方法時,直接把值放進去。

1
2
3
4
5
6
7
8
9
10
Sum();
Sum(1);
Sum(1, 2);
Sum(1, 2, 3);

Console.ReadKey();

void Sum(params int[] list) {
    Console.WriteLine(list.Sum().ToString());
}

程式說明:

  • 呼叫Sum()方法時,引數的個數不一定,可以0~n個。
  • 定義Sum()方法中的 params 的參數類型,一定是一維陣列。(int[], string[]…)

定義方法中的params的參數,必須放在所有參數中的最後一個,而且只能有一個

1
2
3
4
Demo("兔兔班", "Kebo", "JJ", "Rii");
void Demo(string className, params string[] names) {
    Console.WriteLine($"班級:{className} 的學生有:{string.Join(",", names)}");
}

keywords/params
浅谈C#可变参数params
[C#] params 基本介紹

This post is licensed under CC BY 4.0 by the author.