打印 java 中的字节数组有五种方法:使用 tostring() 打印引用使用循环遍历和打印每个元素使用 arrays.tostring() 打印字符串表示使用 string.format() 将数组转换为字符串再打印创建自定义格式化器来指定输出格式
如何打印 Java 中的字节数组
直接打印字节数组
最简单的方法是使用 toString() 方法:
byte[] byteArray = {1, 2, 3}; System.out.println(byteArray.toString());
输出:
立即学习“Java免费学习笔记(深入)”;
[B@1b6d3586
但这只能打印对象的引用,无法显示实际字节值。
使用循环打印字节
可以通过遍历字节数组并打印每个元素来打印字节:
for (byte b : byteArray) { System.out.print(b + " "); }
输出:
立即学习“Java免费学习笔记(深入)”;
1 2 3
使用 Arrays.toString()
JDK 提供了 Arrays.toString() 方法,专门用于打印数组:
System.out.println(Arrays.toString(byteArray));
输出:
立即学习“Java免费学习笔记(深入)”;
[1, 2, 3]
使用 String.format()
可以将字节数组转换为字符串,然后使用 String.format() 打印:
String byteString = String.format("%s", byteArray); System.out.println(byteString);
输出:
立即学习“Java免费学习笔记(深入)”;
[1, 2, 3]
使用自定义格式化
对于需要自定义输出格式的情况,可以创建自己的格式化器:
class ByteFormatter implements Formatter { @Override public String format(Object obj) { byte[] byteArray = (byte[]) obj; StringBuilder sb = new StringBuilder(); sb.append("["); for (int i = 0; i < byteArray.length; i++) { sb.append(byteArray[i]); if (i < byteArray.length - 1) { sb.append(", "); } } sb.append("]"); return sb.toString(); } } System.out.println(String.format(new ByteFormatter(), byteArray));
输出:
立即学习“Java免费学习笔记(深入)”;
[1, 2, 3]
以上就是java怎么打印byte数组的详细内容,更多请关注图灵教育其它相关文章!