Swift で Optional な String を Int に変換したい
Swift で Optional な String を Int に変換して利用したかったのだが、すんなりと型変換できなくて調べたのでメモ。
目次
環境情報
- 対象 iOS バージョン : v11.3
- Xcode : v9.3 (9E145)
- Swift : v4.1 (swiftlang-902.0.48 clang-902.0.37.1)
書き方
Optional な String は、直接 toInt()
が呼べない。そこで、if let
というイディオムを利用して、対象の String 変数に値があって、toInt()
できたときだけ処理する、という書き方にする。
// Optional な String を宣言する
let optionalStr: String? = "100"
if let intStr = optionalStr?.toInt() {
// コレで Int 変換した intStr 変数が使える
print("intStr = \(intStr)") // "intStr = 100"
}
Swift の Optional の使い方あまりよく分かっていないのでコレからお勉強…。