復習 - 安全なアンラップ
CoddyのSwiftジャーニー「基礎」セクションの一部 — レッスン 15/86。
チャレンジ
簡単プレイヤーの name、score、および level を文字列として受け取り、フォーマットされたプレイヤーの概要を返す関数 formatPlayerInfo を作成してください。
欠落している可能性のある値を処理するために、これまでに学んだ3つのアンラップ手法をすべて使用してください:
guard letを使用して、名前が有効(空でない)かどうかを確認します。名前が空の場合は、すぐに"Unknown player"を返します。??(nil合体演算子) を使用して、スコアが空の場合にデフォルトのスコア"0"を提供します。if letを使用して、レベルが有効(空でない)かどうかを確認します。値がある場合は出力に含め、そうでない場合はレベルの部分を省略します。
出力形式:
- レベルが提供されている場合:
"[name] - Score: [score], Level: [level]" - レベルが空の場合:
"[name] - Score: [score]"
パラメータ:
name(String): プレイヤーの名前(空の文字列は nil を表します)score(String): プレイヤーのスコア(空の文字列は nil を表します)level(String): プレイヤーのレベル(空の文字列は nil を表します)
戻り値: プレイヤー情報が含まれるフォーマットされた文字列、または名前が空の場合は "Unknown player"。
ヒント: 関数内で文字列が空かどうかを確認し、空の場合は nil を割り当てることで、空の文字列をオプショナル型に変換してください。
自分で試してみよう
func formatPlayerInfo(name: String, score: String, level: String) -> String {
// ここにコードを記述してください
}