Не проходит проверку "Нужно, чтобы метод toBinary(String) был реализован согласно условию."
Хочется понять, почему? Хотя тесты погонял, отрабатывает, как мне кажется, корректно.
public static String toBinary(String hexNumber) {
String binaryNumber = "";
int decimalNumber = 0;
if (hexNumber == null || hexNumber == "") return binaryNumber;
// проверка на наличие символов кроме 0 до 9 или латинских букв от a до f
String[] hexNumberToArray = hexNumber.split("");
String[] validCharactersForHEX = HEX.split("");
for (String i : hexNumberToArray) {
if (!Arrays.asList(validCharactersForHEX).contains(i)) {
decimalNumber = Integer.MAX_VALUE;
break;
}
}
if (decimalNumber == Integer.MAX_VALUE) return binaryNumber;
//из шестнадцатеричной в десятичную
for (int i = 0; i < hexNumber.length(); i++) {
decimalNumber = 16 * decimalNumber + Arrays.asList(validCharactersForHEX).indexOf(hexNumberToArray[i]);
}
// из десятичной в двоичную
while (decimalNumber != 0) {
binaryNumber = decimalNumber % 2 + binaryNumber;
decimalNumber = decimalNumber / 2;
}
return binaryNumber;
}
}