Avatar
Decimal型を有効活用してる方いらっしゃいますか? APIが使いづらいし、表示したいだけならNumberFormatterで事足りるし、 一体こいつの存在意義はあるんだろうか…と思いまして、 みなさんの利用例が気になりました 辛いAPI👇 let double: Double = 3.123456 // 3.123456 var dec1 = Decimal(double) // 3.123456000000000512 var dec2: Decimal = Decimal() NSDecimalRound(&dec2, &dec1, 4, .bankers) dec2 // 3.1235 隠蔽してみた👇 extension Decimal { func rounded(exponent: Int, roundingMode: RoundingMode = .bankers) -> Decimal { var me = self var result = Decimal() NSDecimalRound(&result, &me, exponent, .bankers) return result } } dec1 // 3.123456000000000512 dec1.rounded(exponent: 4) // 3.1235