我试图在将字符串转换为位String之后将数组内容设置为在正确位置的Java对象中设置0bit,1bit,2bit,3bit。
13-> 1101-> 1011(目的)
当前在转换值之前:

secondByteBitArray[0] = "1"
secondByteBitArray[1] = "1"


旋转值后:

secondByteBitArray[0] = "1"
secondByteBitArray[1] = "0"




    String secondByte = "13";
    String secondByteBits = new BigInteger(secondByte, 16).toString(2);
    String[] secondByteBitArray = secondByteBits.split("(?<=\\G.{1})");
    for(int i=0; i<secondByteBitArray.length; i++){


    }


有没有Java方法可以做到这一点?

最佳答案

String secondByte = "13";
String secondByteBits = new BigInteger(secondByte, 16).toString(2);
String[] secondByteBitArray = secondByteBits.split("(?<=\\G.{1})");
for(int i=0; i<secondByteBitArray.length/2; i++){ // note the division
    int i2 = secondByteBitArray.length-i-1;
    // swap
    String aux = secondByteBitArray[i];
    secondByteBitArray[i] = secondByteBitArray[i2];
    secondByteBitArray[i2] = aux;
}

07-26 05:15