我想将ArrayList格式的结果数组转换为ByteBuffer格式。
public ByteBuffer createDNSClientQuestion() {
ArrayList<Byte> result = new ArrayList<Byte>(QNAME);
result.add((byte) 0);
result.add((byte) QTYPE);
result.add((byte) 0);
result.add((byte) 1);
//here, I want to convert result ArrayList to ByteBuffer form and return it.
}
任何帮助将不胜感激!谢谢!
答案 0 :(得分:1)
您不需要设置临时列表来创建ByteBuffer,您可以直接将您的字节放在ByteBuffer中。如果你想去List方式,你仍然可以这样做。
ArrayList<Byte> result = new ArrayList<Byte>();
result.add((byte) 0);
result.add((byte) 2);
result.add((byte) 0);
result.add((byte) 1);
ByteBuffer buffer = ByteBuffer.allocate(result.size());
for(Byte byt : result) {
buffer.put(byt);
}
希望这有帮助。