在循环中产生byte数组,要把循环产生所有byte数组合并为一个大的byte数组,有没有什么好的方法实现。
循环次数未知,所以最后合并后的byte数组长度未知。while(true)
{
byte[] aa=new byte[100]
}要求循环产生的byte数组合并成一个。谢谢!
循环次数未知,所以最后合并后的byte数组长度未知。while(true)
{
byte[] aa=new byte[100]
}要求循环产生的byte数组合并成一个。谢谢!
如果你要while一次加一次,那就是逻辑问题了。
或者用Trove开源包,可以保存原始类型的byte,并且可以一次导入,不断增加容量。
每次循环内都会产生一个临时byte[],还要copy两次原来数组。
如果有100次循环就要定义100次临时byte[],copy 200次。好像效率比较低啊。有没有更好的办法啊
public static void main(String[] args) {
StringBuffer str = new StringBuffer();
//while(true)
{
byte[] aa=new byte[2] ;
str.append(new String(aa));
}
byte[] arr = str.toString().getBytes();//合并后的
//System.out.println(Arrays.toString(arr));
}