Почему я получаю разные результаты, поясни как это работает
var bytes = new byte[]{-60, 86, 47};
System.out.println(new BigInteger(bytes).toString(16));

System.out.println(new BigInteger(1, bytes).toString(16));
Результат
-3ba9d1
c4562f