http://www.ascii.net.cn/
11 22 对应的 ASCII码 是输出不来的
虽然没有超出范围,但是这几个值对应的ASCII码就是所打印出来的特殊符号
楼上正解,查看ASCII码对应的字符就可以知道具体如下,可见打印是正确的。
0000 1011 11 0B VT ␋ 垂直定位符号
0001 0110 22 16 SYN ␖ 同步用暂停
0010 0001 33 21 !
0010 1100 44 2C ,
0011 0111 55 37 7
一般来说string是正常显示ASCII码的,超出ASCII的其他字符未必可以正常显示,就像中文字符你要输出可能也是乱码,像python会使用unicode编码,这样可以正常显示,同样java也是需要其他方法的,所以你上面那条语句是没问题的,是显示编码的问题。
哥哥你跟我闹呢吗,你见过这种转换不设置编码的吗,设置个UTF-8都行啊。在String(byte,"UTF-8")试试