swift 2.0 NSDecimalNumber возможное преобразование дискретности в long
Я не могу сделать головы или хвосты этого. Я использую NSDecimalNumber для усечения дробной части из строки. Это работает в большинстве случаев, но не очевидно в случае бесконечных десятичных дробей (или просто слишком много). Вот пример:
print(NSDecimalNumber(string: "49.81666666666666666").longLongValue)
print(NSDecimalNumber(string: "49.816666666666666666").longLongValue)
print(NSDecimalNumber(string: "49.8166666666666666666").longLongValue)
Первая строка печатает 49, вторая -5 и последняя 0. Я знаю, что могу использовать функцию округления, чтобы сделать то же самое, и это то, что я, вероятно, буду использовать вместо этого, но не кажется ли это странным? Я знаю, что это не просто преобразование битовой комбинации в длинную, иначе результаты будут совершенно другими.