如何在Java中的字节数组中转换ArrayList <jsonarray>

时间:2016-06-17 22:12:05

标签: java arraylist bytearray

在Java中将ArrayList<JsonArray>转换为byte []的最佳方法是什么?

我尝试了myJsonArrayList.toString().getBytes(),但检查值(返回ArrayList<JsonArray>)是不同的。

JsonArray中包含的值为float[]

1 个答案:

答案 0 :(得分:0)

在阅读本文之前,请注意我认为提问者正试图将float[]的{​​{1}}转换为JsonArray s。 < / p>

第1步:创建byte[]ArrayList数组。请注意,byte是合法类型,因此您不需要使用包装器byte[]的数组。

java.lang.Byte

第2步:输入ArrayList<byte[]> byteArrays = new ArrayList<>(); 每个循环遍历for(假设您的ArrayList<JsonArray>被称为ArrayList<JsonArray>)。< / p>

jsonArrays

第3步:在循环中,执行以下注释中解释的内容:

for (JsonArray jsonArray : jsonArrays) { // P.S This is the outer loop

第4步:float[] floats = jsonArray.getFloats(); // Get the float[] located in jsonArray byte[] bytes = new byte[floats.length]; // Create a byte[] that has the exact same length with the above float[] for (int index = 0; index < bytes.length; index++) bytes[index] = (byte) floats[index]; // Cast the float values to byte values byteArrays.add(bytes); // Put the byte array to byteArrays } // This is where the outer loop ends 转换为byteArrays,换句话说,转换为byte[][]数组的数组。

byte

Aaaaaaa已经完成了!

现在让我们把它们放在一起:

byte[][] values = byteArrays.toArray();