Я хотел бы быть в состоянии преобразовать большой Double
к Integer
, но мне кажется, что реализация Фреге Haskell из floor
не уступает в Integral
типа. Вместо этого, похоже, он реализован для взаимодействия с тем, как это делает Java, и принимает тип Floating
в Double
, Floating r => r -> Double
. Я мог бы использовать round
, но это раунды, а не усечение (хотя я мог бы вычесть 0.5 и , затем раунд). Я предпочел бы работать, не прибегая к использованию Int
или Long
, который, как и последний, по-прежнему ограничен точностью.Фрег Дважды в целое
Любые способы использования напольного покрытия типа с плавающей точкой для произвольного типа целых чисел точности?
Вашего вычитание подход кажется разумным с учетом ограничений, но я никогда не использовал Фрег. – dfeuer
Судя по http://stackoverflow.com/questions/17960186/is-there-anyway-to-convert-from-double-to-biginteger, для этого требуется некоторое представление об этом. – Ingo