Валидатору в этой задаче антиреспект.
Вроде как бы решил, но он не пускал меня тупо по пункту "проверьте что в методе toDecimal проводится проверка на пустую строку и на null. Перелопатив 2 часа гугляндия, я пришёл к выводу что валидатор меня жестко нагнул не в ту сторону.
Как оказалось, ошибка была вовсе не в проверке этого условия, а в неправильной реализации самого метода. ( В этот момент было желание что-то сломать)
Ок, побесился. Подглянул в решение. перевел кое-что из него в своём вуаля. РЕШЕНО...
Но...
Мое решениe метода toDecimal
public static int toDecimal(String binaryNumber) {
if (binaryNumber == null || binaryNumber.isEmpty()) return 0;
int decimalNumber = 0;
for (int i = 0; i < binaryNumber.length(); i++) {
int index = binaryNumber.length() - 1 - i;
int value = Character.getNumericValue(binaryNumber.charAt(index));
decimalNumber += value * Math.pow(2, i);
}
return decimalNumber;
}
валидатор принял, мне бы пофиг но я не такой. пара вопросов:
1) что за метод Character.getNumericValue(binaryNumber.charAt(index));
его явно не проходили.
2)
Дмитрий Б.
29 уровень
Давайте разберемся.
Решен
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Oleg #2857544 System Engineer
26 мая 2022, 05:04
А у меня не принимало с оператором return null. Прочитав ваш пост подумал что надо метод переделать. И все равно валидатор не принимал. После 17 попыток вернул обратно в метод свой вариант, и заменил оператор return null на return "". И о чудо. Валидатор принял. И да, я с вами согласен, мы этого не проходили. Сам бы без подглядывания метод toBinary не смог бы сделать. Своими силами только toDecimal получилось.
0
fog
23 февраля 2021, 13:00
Character.getNumericValue(char ch)
0
Дмитрий Б.
25 февраля 2021, 15:43
Спасибо,уже разобрался.
0