Я использую Java и ссылаюсь на "двойной" тип данных.
Короче говоря, я читаю некоторые значения из стандартного ввода, которые я прочитал в своем коде, как двойные (я бы предпочел использовать что-то вроде BigInteger, но сейчас это невозможно).
Я ожидаю получить двойные значения от пользователя, но иногда они могут вводить такие вещи, как:
+999999999999999999999999999,9999999999
который, я думаю, не поддается точному представлению для double, а округляется до 1.0E27 (вероятно).
Я хотел бы получить несколько советов о том, как определить, будет ли конкретное значение не может быть точно представлено в двойном и потребует ли округления (чтобы я мог отказаться от этого значения или других подобных действий).
Большое спасибо