🍣
【DAY6】100 Days of SwiftUI -loops, summary
はじめに
iOSアプリ界隈で(たぶん)有名なPaul Hudsonさんが無料で公開しているSwiftUIの100日学習コースを進めてみます。学習記録及び備忘録がてらにつらつらと書いてみます。
100 Days of SwiftUI
学んだこと
序盤はSwiftUIは関係なくSwiftという言語の言語仕様のお話。気になった点だけピックアップ。
for文
一般的な言語と同じようにかける。
// 九九の5の段が表示される
for i in 1...9 {
print("5 x \(i) = \(5 * i)")
}
ループの中でループ変数を使用しない場合はアンダースコアを入れて書くことも可能。この学習コース定番のTaylor Swiftネタ。
var lyric = "Haters gonna"
for _ in 1...5 {
lyric += " hate"
}
print(lyric)
// 出力: Haters gonna hate hate hate hate hate
While文
これも他の言語と同じようにかける。20が出るまで20面ダイスを振り続けることをイメージしたコードが以下。Dungeons & Dragonsというゲームではクリティカルヒットになるらしい。
var roll = 0
while roll != 20 {
roll = Int.random(in: 1...20)
print("I rolled a \(roll)")
}
print("Critical hit!")
おまけ
基本のまとめとしてFizzBuzz問題が出された。条件分岐と繰り返しはこれでOK。
for i in 1...100 {
if i.isMultiple(of: 3) && i.isMultiple(of: 5) {
print("FizzBuzz")
} else if i.isMultiple(of: 3) {
print("Fizz")
} else if i.isMultiple(of: 5) {
print("Buzz")
} else {
print(i)
}
}
Discussion