ReadLine入力
CoddyのSwiftジャーニー「基礎」セクションの一部。レッスン 33/86。
これまで、プログラムではハードコードされた値を使ってきました。プログラムを対話的にするには、ユーザーからの入力を受け取る必要があります。Swiftでは、readLine()関数が標準入力から1行のテキストを読み取ります。
let input = readLine()
print(input)ここには重要な点があります。readLine()は通常のStringではなく、オプショナルなString(String?)を返します。これは、読み取る入力が残っていない場合があり、その場合readLine()はnilを返すためです。空行の場合はnilではなく、空文字列""を返します。この値を使う前に、安全にアンラップする必要があります。
if let name = readLine() {
print("Hello, \(name)!")
}if letを使うと、readLine()がnilではなく値を返した場合にのみ、入力を扱うことが保証されます。入力を読み取り、安全にアンラップするこのパターンは、インタラクティブなプログラムを作るときに何度も使うことになります。
チャレンジ
簡単「greetUser」という関数を作成し、nameを受け取り、個人に合わせたあいさつメッセージを返すようにしてください。
この関数は、readLine()からの入力を安全にアンラップした後に行う処理をシミュレートします。名前を受け取り、あいさつの文字列を作成して返してください。
パラメーター:
name(String): ユーザーの名前
戻り値: 次の形式のあいさつ: Hello, [name]!
自分で試してみよう
func greetUser(name: String) -> String {
// ここにコードを書いてください
}
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: Swiftプレイグラウンド