Menu
CoddyTech

デフォルト値

CoddyのSwiftジャーニー「基礎」セクションの一部。レッスン 57/86。

パラメーターには、ほとんどの場合に使用される値が設定されていることがあります。呼び出し元に毎回その値を指定してもらう代わりに、そのパラメーターにデフォルト値を割り当てることができます。

デフォルト値を設定するには、パラメータの型の後に代入演算子(=)を使用します。

func greet(name: String, greeting: String = "Hello") {
    print("\(greeting), \(name)!")
}
greet(name: "Alice")                    // Output: Hello, Alice!
greet(name: "Bob", greeting: "Hi")      // 出力: Hi, Bob!

関数を呼び出すとき、デフォルト値が設定されたパラメータは省略できます。Swift は自動的にデフォルト値を使用します。ただし、別の値が必要な場合は、明示的に指定することもできます。

デフォルト値を持つパラメータは、パラメータリストの末尾に配置する必要があります。これにより、関数呼び出しがすっきりして読みやすくなります。

func calculatePrice(base: Double, taxRate: Double = 0.1) -> Double {
    return base + (base * taxRate)
}
print(calculatePrice(base: 100))              // 出力: 110.0
print(calculatePrice(base: 100, taxRate: 0.2)) // 出力: 120.0

デフォルト値を使うと、関数の柔軟性が高まります。一般的なケースでは簡単に動作し、必要なときにはカスタマイズもできます。

challenge icon

チャレンジ

簡単

name、greeting、repeatCountを受け取り、整形された挨拶メッセージを返す関数formatGreetingを作成してください。

この関数では、省略可能なパラメーターにデフォルト値を使用します。

  • greetingのデフォルト値は"Hello"とします
  • repeatCountのデフォルト値は1とします

挨拶のパターンを指定された回数だけ繰り返し、スペースで区切った文字列を作成してください。

パラメーター:

  • name(String): 人の名前(必須)
  • greeting(String): 挨拶の語句(デフォルト: "Hello")
  • repeatCount(Int): 挨拶を繰り返す回数(デフォルト: 1)

戻り値: 挨拶のパターンを繰り返した文字列。形式: "[greeting], [name]!"をrepeatCount回繰り返し、単一のスペースで区切ったもの(String)

たとえば、nameが"Alice"、greetingが"Hi"、repeatCountが2の場合、関数は"Hi, Alice! Hi, Alice!"を返します。

nameに"Bob"だけを指定して呼び出した場合(デフォルト値を使用)、"Hello, Bob!"を返します。

自分で試してみよう

func formatGreeting(name: String, greeting: String, repeatCount: Int) -> String {
    // ここにコードを書いてください
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン

自分で練習してみよう: Swiftプレイグラウンド