整数(Int)と浮動小数点数(Double)の変換
整数と浮動小数点数の変換
下記の計算をしてみましょう。
1 2 3 |
let value1 = 2 let value2 = 1.14159 let pi = value1 + value2 //エラー発生 |
上記、あえて型推論してわかりずらくしていますが、エラー発生の原因はなんでしょうか?
value1はInt型、value2はDouble型です。
違う型同士のデータでは演算ができません。これは整数と浮動小数点の計算でも同じです。
得たいデータ(答え)の型に合わせて変換しましょう。
「3.14159」を得たい場合(Int→DoubleまたはFloatへの変換)
1 2 3 |
let value1 = 2 let value2 = 1.14159 let pi = Double(value1) + value2 // value1 を 2.0(浮動小数点型)に変換してから計算する |
「3」を得たい場合(DoubleまたはFloat→Intへの変換)
1 2 3 |
let value1 = 2 let value2 = 1.14159 let pi = value1 + Int(value2) // value2 を 1(整数型)に変換してから計算する |
整数への変換時は「数値の丸め」(小数点以下切り捨て)に気をつけなければいけません。
切り捨てて良いデータかどうか確認して変換を行いましょう。