目次
Swiftの関数引数のデフォルト値としての `String? = nil` の意味
Swiftのコードにおいて、実は引数が必須でない場合もあるのです。
関数の引数にデフォルト値として String? = nil
を指定することで、その引数がオプショナルであり、省略可能であることを実現できますつまり、呼び出し側でその引数が省略可能であるということです。具体的には、引数が提供されなかった場合、その引数は nil
になるということです。
詳細な説明
func showList(isStudent: Bool, firstQuery: String? = nil) {}
この関数の定義について詳しく説明します。
1. 関数名と引数:
- 関数名は `showList` です。
- 引数は2つあります。
- `isStudent`: 型は `Bool` です。これは省略できない必須の引数です。
- `firstQuery`: 型は `String?`(オプショナルな `String`)です。デフォルト値が `nil` に設定されています。
2. String? = nil
の意味:
String?
は、オプショナルな `String` 型を意味します。つまり、この引数は `String` の値を持つこともできるし、`nil` になることもできます。
= nil
は、この引数が省略された場合のデフォルト値が `nil` であることを意味します。
使い方
この関数を呼び出す際に、`firstQuery` を指定しても指定しなくてもどちらでも良いということです。
1. firstQuery
を指定しない場合:
showList(isStudent: true)
この場合、firstQuery
は nil
になります。
2. firstQuery
を指定する場合:
showList(isStudent: true, firstQuery: "search term")
この場合、firstQuery
は "search term"
という String
になります。
まとめ
Swiftでは省略可能な引数を定義することができるのです!
このコードは、showList
関数において、isStudent
は必須の引数で、firstQuery
はオプショナルな引数であることを示しています。firstQuery
が指定されなかった場合、その値はデフォルトで nil
になります。これにより、関数呼び出し時の柔軟性が向上します。
年収4桁万円を達成中のiOSエンジニアが皆さんをお導きいたします!
ぜひメンターを受けてみてください〜
メンターはこちら
コメント