[Swift3]指定した桁で四捨五入・切り捨てなどを行う

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る
Swift

Swift3で四捨五入・切り捨て・切り上げを行う場合は「round(四捨五入)」「floor(切り捨て)」「ceil(切り上げ)」を使う。

基本の使い方

以下のコードを参照。いずれも小数第1位を処理の対象とする。

別の桁を操作する

通常の使い方では小数第1位の処理しか行えないが、以下の手順を踏むことで他の桁を操作することができる。

  1. 操作したい桁が小数第1位になるように、小数点をずらす(10のn乗を掛ける)
  2. round/floor/ceilする
  3. 小数点を元に戻す(10のn乗で割る)

以下のコードでは、小数第3位で四捨五入を行なっている。

1行で済ませてしまっているが、処理の手順は

  1. 「2」を小数第1位に持っていきたいので、100倍する→137.28
  2. roundにより四捨五入を行う→137
  3. 手順1で100倍したので、roundの結果を100で割る→1.37

となっている。

なお、以下のように「1の位で切り上げ」ということも可能。

活用方法

例えば、UISlider(スライダー)の値を使用する時に便利。
そのまま使おうとすると桁が余分だったりする。

・値をそのまま使った場合

UISliderの値をそのまま使用

・roundで小数第2位を四捨五入した場合

roundを使った場合

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

SNSでもご購読できます。