Вы используете StringBuffer
(java 5 введено StringBuilder
). Вы используете Integer.valueOf
, когда вы должны использовать Integer.parseInt
. Я бы предпочел метод, который вернул результат - пусть вызывающий отображает его. И, если вы используете Java 8+, вы можете просто транслировать и конвертировать с map
. Мол,
private static String convertToHex(String macDec) {
return Arrays.stream(macDec.split("\\."))
.map(mac -> Integer.toHexString(Integer.parseInt(mac)))
.collect(Collectors.joining()).toUpperCase();
}
Я переместил toUpperCase()
в конце. Используйте любую версию, которую вам легче всего читать.