【已解决】Android中byte数组byte[]实现如何拷贝

【问题】

android中有两个buffer,想要实现拷贝:

void xxx(byte[] buffer, int writeLength){
    final byte[] tmpBuf = new byte[writeLength];
}

想要把buffer中长度writeLength拷贝到新的tmpBuf中。

【解决过程】

1.网上搜了:

android byte buffer copy

参考了:

ByteBuffer | Android Developers

java – Copy several byte arrays to one big byte array – Stack Overflow

nio – Deep copy duplicate() of Java’s ByteBuffer – Stack Overflow

结果很是失望:

java中竟然没有方便好用的,直接实现byte数组拷贝的函数。。。

2.试试那个System.arraycopy:

   final byte[] tmpBuf = new byte[writeLength];
   System.arraycopy(buffer, 0, tmpBuf, 0, writeLength);

结果:

是可以的:

java use system.arraycopy can copy byte array

【总结】

java中,实现byte[]的拷贝,可以用

System.arraycopy

即可。



发表评论

电子邮件地址不会被公开。 必填项已用*标注

无觅相关文章插件,快速提升流量