Java(101):生成不同长度的byte数组数据,并转换成String打印

前言:最近字节数据需要打印出现查看,但是字节数据不可直接打印

查找网上原因:在内存中,数据都是以byte 为单位存储在内。当程序文件加载到内存中,才能运行。

1 byte =8bit,即8个0或1组成的序列。所以内存中都是0和1。

比如对于内存中的一段bit序列0110 0001,如果赋予它为整数类型,

它就代表十进制的97或十六进制的61(0x61);

如果把它看做一个字符串,查ASCII码表,它就是字母a。

 Java byte数组转换成String打印

public class StringToByte {

    public static void main(String[] args) {
        int length=16;
        byte[] bytes = new byte[length];
        for (int i=0; i<length;i++ ){
            bytes[i]=(byte)0x61;
        }
        System.out.println(bytes.toString());

        String s=new String(bytes,StandardCharsets.UTF_8);
        System.out.println("字符串输出: "+s);

        //打印成十六进制
        System.out.println("十六进制Output: " + DatatypeConverter.printHexBinary(bytes));
    }
    
}

执行结果:

 

其他:

Java(91):Java byte数组转换成ASCII码,⼗六进制字符串打印

https://blog.csdn.net/fen_fen/article/details/124823228

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宁宁可可

您的鼓励是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值