目次
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エンジニアが皆さんをお導きいたします!
ぜひメンターを受けてみてください〜
メンターはこちら

コメント