黑马程序员技术交流社区

标题: 关于字符串拆成byte类型数组的问题,这块知识有点缺,求详解!谢谢 [打印本页]

作者: 史超    时间: 2013-12-4 15:21
标题: 关于字符串拆成byte类型数组的问题,这块知识有点缺,求详解!谢谢
public void SubString(String str , int byteNum)
        {
                //将字符串拆成byte型数组
                byte[] bt = str.getBytes();
                //如果需要截取的字符长度大于等于1
                if(byteNum >= 1)
                {
                        //如果截取的字节数小于零
                        if(bt[byteNum] < 0)???????
                        {
                                //运用String构造方法,通过使用平台的默认字符集解码指定的 byte子数组,将长度减一
                                String substrx = new String(bt, 0 , --byteNum);
                                System.out.println(substrx);
                        }



求解释:一堆“???” 处 (if(bt[byteNum] < 0)应该怎样理解?
作者: kongling    时间: 2013-12-4 18:27
str.getBytes(),是按照指定的编码方式奖字符串进行编码(这里是默认),即将字符串编码成字节数组,if(bt[byteNum] < 0),表示的是进行编码之后,判断某一字节的码值是否为负值。例如GBK编码中,对中文编码后的每个字节编码值就为负值
作者: 史超    时间: 2013-12-5 09:06
kongling 发表于 2013-12-4 18:27
str.getBytes(),是按照指定的编码方式奖字符串进行编码(这里是默认),即将字符串编码成字节数组,if(bt  ...

  恩恩 谢谢你的回复哈  




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