黑马程序员技术交流社区

标题: 为什么eclipse输出的是乱码 [打印本页]

作者: 小城青年    时间: 2015-7-28 22:25
标题: 为什么eclipse输出的是乱码
public class Array {

        /**
         * @param args
         */
        public static void main(String[] args) {
                // TODO Auto-generated method stub
               
                byte[] b={10,20,30,40,50};
                String s=new String(b);
                System.out.println(s);

        }

}
eclipse输出的是一串方块里面是问号的乱码!搞不懂

作者: wode1311    时间: 2015-7-28 23:43
输出的结果是数组中数字所对应的ASCII码表值
作者: n361204357    时间: 2015-7-28 23:45
道理和'A'强转为int一样
作者: a12366456    时间: 2015-7-29 10:23
你的eclipse应该使用的默认GBK编码,new String(b)的时候把ASCII码值转为字符,这个码表28~126都有对应字符,其他数值没有
作者: 叫我斯文哥    时间: 2015-7-29 10:45
本帖最后由 叫我斯文哥 于 2015-7-29 10:48 编辑

byte[] b={10,20,30,40,50};是一个字节数组,String s=new String(b);     你转化成String用的是默认编码,在编码表里找不到对应的字符就是乱码;
{10,20,30,40,50}; 你是从哪里来的,不是随便一个字节数组就有对应的字符的,你说你的家乡话,我是听不懂的






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2