Да - вызов encodeHex()
возвращает массив символов (char[]
), и вы просто вызываете toString
для этого. Вместо этого используйте конструктор String (char []):
new String(Hex.encodeHex("10".getBytes()))
(я бы настоятельно , кстати, не рекомендовал бы использовать метод String.getBytes()
без параметров, который использует кодировку платформы по умолчанию. Это постоянный источник тонких ошибок.)