Баг Double.parsedouble() В Android

В поисках случайной ошибки я столкнулся с неожиданным поведением метода.

Двойной.

parseDouble() .

Выполнение кода

  
   

Double.parseDouble("4cff9d79-a696-4dfc-89f9-a265ae117257");

не вызывало исключение NumberFormatException. Код сработал вполне корректно и выдал результат — Бесконечность .

Мягко говоря, я был удивлён.

Я проверил.

Метод корректно работал с десятками других UUID, но именно с этим (и некоторыми другими, которые иногда попадались) Android вел себя немного загадочно.

Проверка десктопной Java подтвердила мою догадку — проблема только в Android. В чем дело? Покопавшись, я обнаружил, что проблема в этом коде, который выполняется при вызове синтаксический анализDouble() :

if (result.e < -1024) {

Теги: #Android #ошибки #никто не читает теги #java

Вместе с данным постом часто просматривают: