文字列と数値の間の変換方法、日付のフォーマット方法など、Swift言語に関する知っておくといろいろと役立つ小技を紹介します。
数値から文字列へ変換
数値を文字列に変換するのにはString()が使えます。
変換に失敗しないのでnilの心配は不要で、String型が必ず返ってきます。
String(10) //=> "10"
String(1.23) //=> "1.23"
String(-9.87) //=> "-9.87"
文字列から数値へ変換
文字列を数値に変換する場合はInt()やDouble()が使えます。変換に失敗するとnilが返ってくるため、Optional型が返ってくるのに注意が必要です。
整数型へ変換する場合
//整数型へ変換。Optional型が返ってくる
Int("123") //=> Optional(123)
Int("123").dynamicType //=> Optional<Int>.Type
Int("12.34") //=> nil
Int("abc") //=> nil
小数型へ変換する場合
//小数型へ変換。Optional型が返ってくる
Double("12.3") // Optional(12.3)
Double("12.3").dynamicType //=> Optional<Double>.Type
Double("123") // Optional(123)
Double("abc") // nil
クラス名を表示する
型の場合はself、値の場合はdynamicTypeで表示できます。
//クラスの型を表示
Int.self //=> Int.Type
//値の型を表示
123.dynamicType //=> Int.Type
日付
現在日付の取得。
//現在時刻を取得する
let now = NSDate()
NSDateFormatterを使って好みの書式でフォーマット可能。
//日付をフォーマットする
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy/MM/dd HH:mm:ss"
dateFormatter.stringFromDate(now) //=> "2016/08/26 13:58:57"
printデバッグ
print()を使用すればコンソールに情報を出力できます。「()」の中に変数を入れればその内容が埋め込まれます。
///// print
let a = 123
print("a=\(a)です")//=> "a=123です\n"