我正在学习如何使用java的Formatter类。 我想将正字节转换为十六进制数字,然后将其解析为带有两位数的字符串 。
我的方法看起来像这样:
String toHexString(byte byteToConvert) {
StringBuilder hexBuilder = new StringBuilder();
hexBuilder.append(Integer.toHexString(byteToConvert));
return hexBuilder.toString();
}
有没有办法能够将String(或StringBuilder)格式化为两位数?
System.out.println(toHexString(127)); // Would like it to output "7f"
System.out.println(toHexString(1)); // Would like it to output "01"
答案 0 :(得分:2)
你在这里不需要StringBuilder
。只需使用String.format
即可:
String toHexString(byte byteToConvert) {
return String.format("%02x", byteToConvert);
}