Я пытаюсь вставить один бит в массив байтов, что сдвинуло бы все биты в массиве байтов влево.
Скажем, у меня есть байтовый массив Java следующим образом:
byte[] byteArray = new byte[2];
byteArray[0] = 0x11
byteArray[1] = 0x00
В двоичном формате этот массив байтов представлен как:
0001 0001 0000 0000
Теперь я хочу вставить ноль в позицию третьего бита (теряя последний бит в массиве байтов), в результате чего:
0000 1000 1000 0000
Есть ли простой способ сделать это на Java? Мне известен класс BigInteger, который может преобразовать весь массив байтов в двоичную строку (затем вставить таким образом и преобразовать обратно), но это кажется неэффективным.
Заранее спасибо.