打印 Java 中的字节数组有五种方法:使用 toString() 打印引用使用循环遍历和打印每个元素使用 Arrays.toString() 打印字符串表示使用 String.format() 将数组转换为字符串再打印创建自定义格式化器来指定输出格式

如何打印 Java 中的字节数组
直接打印字节数组
最简单的方法是使用 toString() 方法:
<code class="java">byte[] byteArray = {1, 2, 3};
System.out.println(byteArray.toString());</code>输出:
立即学习“Java免费学习笔记(深入)”;
<code>[B@1b6d3586</code>
但这只能打印对象的引用,无法显示实际字节值。
使用循环打印字节
可以通过遍历字节数组并打印每个元素来打印字节:
<code class="java">for (byte b : byteArray) {
System.out.print(b + " ");
}</code>输出:
立即学习“Java免费学习笔记(深入)”;
<code>1 2 3</code>
使用 Arrays.toString()
JDK 提供了 Arrays.toString() 方法,专门用于打印数组:
<code class="java">System.out.println(Arrays.toString(byteArray));</code>
输出:
立即学习“Java免费学习笔记(深入)”;
<code>[1, 2, 3]</code>
使用 String.format()
可以将字节数组转换为字符串,然后使用 String.format() 打印:
<code class="java">String byteString = String.format("%s", byteArray);
System.out.println(byteString);</code>输出:
立即学习“Java免费学习笔记(深入)”;
<code>[1, 2, 3]</code>
使用自定义格式化
对于需要自定义输出格式的情况,可以创建自己的格式化器:
<code class="java">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));</code>输出:
立即学习“Java免费学习笔记(深入)”;
<code>[1, 2, 3]</code>
以上就是java怎么打印byte数组的详细内容,更多请关注php中文网其它相关文章!
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号