Есть код с помощью которого я получаю нормальные значения, в данном случае токи
Нужно с массива интов, обратно в массив байт
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
// Массив байт для обработки
byte[] response = new byte[]{1, -92, 0, 0, 24, 1, 29, 1, -122, 1, -102, 1, -92, 1, 28, 2, 38, 2, 108, 2, 118, 2, -118, 2, -68, 2, -48, 2, 12, 3, 84, 3, 92, 3, -124, 3, 20, 5, 30, 5, 40, 5, 60, 5, 70, 5, 90, 5, 100, 5, 120, 5, -126, 5, 4, 6, 109, 6, -32, 6, 88, 7, -58, 7, -38, 7, 72, 8, -64, 8, 56, 9, -90, 9, 30, 10, 40, 10, 60, 10, 80, 10, 100, 10, -126, 10, -106, 10, -86, 10, 34, 11, -102, 11, 118, 12, -18, 12, 11, 13, 22, 13, 52, 13, 0, 68, 36};
int FirstByteTmp, SecondByteTmp, ByteTmp;
int MassCurrentsPhases[] = new int[50];
// Цикл для подсчета и записи в массив обработаных данных
for (int i = 0, j = 0; i < 50; i++, j += 2) {
FirstByteTmp = (0x000000FF & ((int) response[5 + j]));
SecondByteTmp = (0x000000FF & ((int) response[4 + j]));
ByteTmp = (char) (FirstByteTmp << 8 | SecondByteTmp);
MassCurrentsPhases[i] = (int) ByteTmp;
}
System.out.println("Длина" + response.length);
System.out.println(Arrays.toString(MassCurrentsPhases)); // Выводим массив с данными
}
}
На выходе у меня следующие:
Ссылка
Вопрос как мне вот эти значения:
[280, 285, 390, 410, 420, 540, 550, 620, 630, 650, 700, 720, 780, 852, 860, 900, 1300, 1310, 1320, 1340, 1350, 1370, 1380, 1400, 1410, 1540, 1645, 1760, 1880, 1990, 2010, 2120, 2240, 2360, 2470, 2590, 2600, 2620, 2640, 2660, 2690, 2710, 2730, 2850, 2970, 3190, 3310, 3339, 3350, 3380]
Вернуть обратно в эти байты:
24, 1, 29, 1, -122, 1, -102, 1, -92, 1, 28, 2, 38, 2, 108, 2, 118, 2, -118, 2, -68, 2, -48, 2, 12, 3, 84, 3, 92, 3, -124, 3, 20, 5, 30, 5, 40, 5, 60, 5, 70, 5, 90, 5, 100, 5, 120, 5, -126, 5, 4, 6, 109, 6, -32, 6, 88, 7, -58, 7, -38, 7, 72, 8, -64, 8, 56, 9, -90, 9, 30, 10, 40, 10, 60, 10, 80, 10, 100, 10, -126, 10, -106, 10, -86, 10, 34, 11, -102, 11, 118, 12, -18, 12, 11, 13, 22, 13, 52, 13