Подскажите где допустил ошибку?
package com.javarush.task.pro.task09.task0908;
import java.util.regex.Pattern;
/*
Двоично-шестнадцатеричный конвертер
*/
public class Solution {
private static final String HEX = "0123456789abcdef";
public static void main(String[] args) {
String binaryNumber = "100111010000";
System.out.println("Двоичное число " + binaryNumber + " равно шестнадцатеричному числу " + toHex(binaryNumber));
String hexNumber = "9d0";
System.out.println("Шестнадцатеричное число " + hexNumber + " равно двоичному числу " + toBinary(hexNumber));
}
public static String toHex(String binaryNumber) {
//напишите тут ваш код
String hexNumber = "";
if (binaryNumber != "" || binaryNumber != null || binaryNumber.equals(0) || binaryNumber.equals(1)) {
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 = decimalNumber + value * (int)Math.pow(2, i);
}
while (decimalNumber != 0) {
int x = decimalNumber % 16;
hexNumber = HEX.charAt(x) + hexNumber;
decimalNumber = decimalNumber / 16;
}
return hexNumber;
} else {
return hexNumber;
}
}
public static String toBinary(String hexNumber) {
//напишите тут ваш код
String binaryNumber = "";
if (hexNumber != "" || hexNumber != null || hexNumber.equals(0) || hexNumber.equals(1)) {
int decimalNumber = 0;
for (int i = 0; i < hexNumber.length(); i++) {
decimalNumber = 16 * decimalNumber + HEX.indexOf(hexNumber.charAt(i));
}
while (decimalNumber != 0) {
binaryNumber = decimalNumber % 2 + binaryNumber;
decimalNumber = decimalNumber / 2;
}
return binaryNumber;
} else {
return binaryNumber;
}
}
}