最有效的方法是什么?
byte[] byteArray = new byte[byteList.size()];
for (int index = 0; index < byteList.size(); index++) {
byteArray[index] = byteList.get(index);
}
您可能不喜欢它,但这是创建byte
的Authentic™Array®的唯一方法。
如评论中指出的,还有其他方法。但是,这些方法都无法绕开a)创建数组和b)分配每个元素。这个使用iterator。
byte[] byteArray = new byte[byteList.size()];
int index = 0;
for (byte b : byteList) {
byteArray[index++] = b;
}