時に文字列を数値に、数値を文字列に変えたい時もあるでしょう。
そんな時に役立つのが型変換です。キャストとも言います。
目次
Intへの型変換
基本的に以下のやり方でできるようです。
Int([Int型にしたい変数])
ちょっと注意が必要なのは、String型にする時、「Int([Int型にしたい変数])!」と末尾に「!」をつけることくらいですね。
ここはアンラップというものです。こちら
BOOL型は変換できないようです。
コンパイルエラーになりました。
import UIKit class FirstViewController : UIViewController, UITextFieldDelegate { override func viewDidLoad() { super.viewDidLoad() // Float -> Int let floatValue : Float = 553.0 let floatToInt : Int = Int(floatValue) print("FloatからInt:\(floatToInt)") // Double -> Int let doubleValue : Double = 553.0 let doubleToInt : Int = Int(doubleValue) print("DoubleからInt:\(doubleToInt)") // String -> Int let string : String = "553" let stringToInt : Int = Int(string)! print("StringからInt:\(stringToInt)") } }
Floatへの型変換
基本的に以下のやり方でできるようです。
Float([Float型にしたい変数])
アンラップが必要など、その辺りはInt型への変換とほとんど変わらないです。
import UIKit class FirstViewController : UIViewController, UITextFieldDelegate { override func viewDidLoad() { super.viewDidLoad() // Int -> Float let IntValue : Int = 553 let intToFloat : Float = Float(IntValue) print("IntからFloat:\(intToFloat)") // Double -> Float let doubleValue : Double = 553.0 let doubleToFloat : Float = Float(doubleValue) print("DoubleからInt:\(doubleToFloat)") // String -> Float let string : String = "553.2" let stringToFloat : Float = Float(string)! print("StringからInt:\(stringToFloat)") } }
Double型への型変換
import UIKit class FirstViewController : UIViewController, UITextFieldDelegate { override func viewDidLoad() { super.viewDidLoad() // Int -> Double let IntValue : Int = 417553 let IntToDouble : Double = Double(IntValue) print("IntからDouble:\(IntToDouble)") // Float -> Double let doubleValue : Float = 417.553 let FloatToDouble : Double = Double(doubleValue) print("FloatからDouble:\(FloatToDouble)") // String -> Double let string : String = "417.553" let stringToDouble : Double = Double(string)! print("StringからDouble:\(stringToDouble)") } }
Stringへの型変換
基本的に以下のようにかけばString型に変換できます。
String([Stringに変換したい変数])
import UIKit class FirstViewController : UIViewController, UITextFieldDelegate { override func viewDidLoad() { super.viewDidLoad() // Int -> String let integetValue : Int = 553 let integerToString : String = String(integetValue) print("IntからString:\(integerToString)") // Float -> String let floatValue : Float = 553.0 let floatToString : String = String(floatValue) print("FloatからString:\(floatToString)") // Double -> String let doubleValue : Double = 553.0 let doubleToString : String = String(doubleValue) print("DoubleからString:\(doubleToString)") // Bool -> String let boolValue : Bool = true let boolToString : String = String(boolValue) print("BoolからString:\(boolToString)") } }