省略可能なパラメーター
CoddyのC#ジャーニー「基礎」セクションの一部。レッスン 52/70。
C#では、メソッドのシグネチャでデフォルト値を指定することで、メソッドにオプションのパラメーターを定義できます。これにより、そのパラメーターの引数を指定してもしなくても、メソッドを呼び出せます。引数が指定されていない場合は、デフォルト値が使用されます。
省略可能なパラメーターを定義する基本的な構文は次のとおりです。
access_modifier return_type method_name(parameter_type parameter_name = default_value) {
// メソッド本体
}例:
public static void Greet(string name = "Guest") {
Console.WriteLine("Hello, " + name + "!");
}この例では、Greetメソッドには、デフォルト値が"Guest"の省略可能なパラメーターnameがあります。このメソッドは次の2通りの方法で呼び出せます。
Greet("Alice"); // 出力: Hello, Alice!
Greet(); // 出力: Hello, Guest!nameに引数を指定すると、それが使用されます。引数を省略すると、デフォルト値の"Guest"が使用されます。
省略可能なパラメーターは、メソッドのシグネチャ内で必須パラメーターの後にすべて配置する必要があります。省略可能なパラメーターは複数指定できますが、省略可能なパラメーターを定義した後は、それ以降のパラメーターもすべて省略可能でなければなりません。
チャレンジ
簡単DisplayMessageという名前のメソッドを作成し、次の2つのパラメーターを受け取るようにします。
messageという名前の必須の文字列パラメーター。- デフォルト値が
1の、repeatCountという名前の省略可能な整数パラメーター。
このメソッドは、コンソールにmessageをrepeatCount回出力します。メソッドの呼び出し時にrepeatCountが指定されていない場合は、デフォルト値の1が使われます。
メソッドの呼び出し方の例を示します。
DisplayMessage("Hello!"); // Prints "Hello!" once
DisplayMessage("Coddy", 3); // Prints "Coddy" three times自分で試してみよう
using System;
public class Program {
// ここにDisplayMessageメソッドを作成してください
public static void Main(string[] args) {
DisplayMessage("Hello!");
DisplayMessage("Coddy", 3);
}
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: C#オンラインコンパイラ