Я написал вариант алгоритма двойного потока Ryu. Моя версия не оказывает существенного влияния на код, для ответа на этот вопрос вы можете прочитать исходный файл.
Я пишу тест покрытия для своего приложения и не могу найти двойное значение, параметр функции public static String doubleToString(double value), которое приведет к последующему вызову Private static int decimalLength(long v), возвращающего 1.
The decimalLength Здесь функция вызывается только один раз для вычисления переменной с именем vplength, например, Final int vplength = decimalLength(dp);.
Функция decimalLength просто подсчитывает количество цифр по основанию 10 любой длины, переданной ей. Итак, проблема заключается в том, чтобы найти двойное значение, которое сделает значение dp < 10.
В исходном коде не так много комментариев, поэтому мне трудно найти решение. Я начал читать статью ACM, но это займет некоторое время.
Подробнее здесь: https://stackoverflow.com/questions/798 ... ggling-wit