Добрый день. Подскажите пожалуйста разницу реализаций решения с точки зрения условий.
Это решение коллег.
public static int toDecimal(String binaryNumber) {
int dec=0;
if (binaryNumber == null || binaryNumber.equals("")) return 0;
else {
for (int i = 0; i < binaryNumber.length(); i++) {
int t = Character.getNumericValue(binaryNumber.charAt(binaryNumber.length()-1-i));
dec = dec + t * (int) Math.pow(2,i);
}
return dec;
}
Это мое решение, которое так же работает, но не нравится валидатору.
public static int toDecimal(String binaryNumber) {
int result = 0;
if (binaryNumber == null || binaryNumber.equals(""))
return 0;
for (int i = 0; i < binaryNumber.length(); i++) {
result = result + (int) Math.pow(((binaryNumber.charAt(binaryNumber.length() - 1 - i) - '0') * 2), i);
}
return result;
}
}