String(byte[] bytes,int offset, int length);

解决方案 »

  1.   

    针对byte[]操作,不是字符串。String默认编码是16位每字节的。
      

  2.   

    >byte[] aaa = "jiligulu xiliwala";????!!!!
      

  3.   

    楼主,应该是byte[] aaa = "jiligulu xiliwala".GetBytes();吧?
    自己写一个循环拷贝的函数,别以为循环拷贝会慢了。普通机子每毫秒运行十万次循环都没问题。
      

  4.   

    byte[] aaa = "jiligulu xiliwala";
    这是什么东东?????????
      

  5.   

    byte[] aaa = "jiligulu xiliwala";这句是不行的啊但是如果改成byte[] aaa = "jiligulu xiliwala".getBytes();
    那又如何告诉人家要抓哪些出来啊
      

  6.   

    楼主对c那么熟悉还学java干吗!还让我们笑话~
      

  7.   

    的确应该是byte[] aaa = "jiligulu xiliwala".getBytes();
    sorry,我对java还不是很习惯:(
    循环是不行的,我这里对效率要求很高,恐怕非得使用操作系统提供的内存块拷贝功能才能达到要求。to ningIII(小宁):
    你把C看得太高了。我更喜欢java,简洁易用,可惜就是字符串处理功能弱了点,还有就是内存操作太麻烦。
      

  8.   

    我对java懂得不多,不过c++倒是用了几年。strncpy和memcpy其实也是循环啊,不用循环谁能实现strncpy?
    记得c版上几年前一个老兄说,他去Microsoft面试,题目就是写出strcpy的实现代码。他写完后斟酌再三,总是觉得自己的代码不够好,面试自然也没有过。回头来,翻出了编译器里的c源码,才发现这么简单一个实现,原来有这么深的道理。
      

  9.   

    java中String类的方法很多,基本上能满足我们需要,,,我也不知道你要解决
    什么问题。。所以我支持moke33(Mr.Li ★ 我爱冰冰) 的方法,String(byte[] bytes, int offset, int length)。。
    还有JAVA本身就不是高效的,如果要高效那你选择错语言了
      

  10.   

    不知道搂主是不是要这种代码: byte[] aaa = "jiligulu xiliwala".getBytes();

    byte[] bb = new byte[aaa.length];

    System.arraycopy(aaa,9,bb,0,8);

    System.out.println(new String(bb,0,8));还是这种 
    String cc =  "jiligulu xiliwala";
    String dd = cc.substring(9,17);
    System.out.println(dd);System.arraycopy 应该是你想要的。这个效率比循环要高得多。可能是用移位操作实现的吧!
      

  11.   


    用System.arraycopy>你把C看得太高了。我更喜欢java,简洁易用,可惜就是字符串处理功能弱了点谁说java的字符串处理功能弱?尤其是和C比较