Подскажите как в коде работает вот эта строчка:
// я как бы по своему это понимаю но не уверен что конкретно возвращает данная строка
binaryNumber.length() - 1 - i
// например если число 101 - то строка возвращает 10 или 01 при первой итерации когда i равна 0
И еще 1 вопрос, для чего эта строка нужна, почему просто binaryNumber.length() - 1 - i не подходит.
Character.getNumericValue
// code
public static int toDecimal(String binaryNumber) {
if (binaryNumber == null) {
return 0;
}
if (binaryNumber.equals("")) {
return 0;
}
int decimalNumber = 0;
for (int i = 0; i < binaryNumber.length(); i++) {
decimalNumber = decimalNumber
+ Character.getNumericValue(binaryNumber.charAt(binaryNumber.length() - 1 - i))
* (int) (Math.pow(2, i));
}
return decimalNumber;
}