Java Array Invert InvertBytes(Boolean[] dataToInvert)

Here you can find the source of InvertBytes(Boolean[] dataToInvert)

Description

Invert Bytes

License

Apache License

Declaration

public static Boolean[] InvertBytes(Boolean[] dataToInvert) 

Method Source Code

//package com.java2s;
/*//from   w  ww . j a  v a2s  .c om
 * Copyright 2017 ozkr16.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

public class Main {
    public static Boolean[] InvertBytes(Boolean[] dataToInvert) {
        Boolean[] fakeByte = new Boolean[8];
        Boolean[] result = new Boolean[dataToInvert.length];
        Boolean[] fakeByteReversed;
        int k = 0;
        for (int i = 0; i <= dataToInvert.length; ++i) {
            if (i % 8 == 0 && i != 0) {
                fakeByteReversed = InvertBitsInByte(fakeByte);
                int positionWhithinByte = 0;
                for (Boolean bit : fakeByteReversed) {
                    result[k * 8 + positionWhithinByte] = bit;
                    ++positionWhithinByte;
                }
                fakeByteReversed = null;
                ++k;
            }
            if (i < dataToInvert.length) {
                fakeByte[(i % 8)] = dataToInvert[i];
            }
        }
        return result;
    }

    public static Boolean[] InvertBitsInByte(Boolean[] booleanByte) {
        int dataLenght = booleanByte.length;
        Boolean[] invertedBytes = new Boolean[dataLenght];
        int index = 0;
        for (boolean bit : booleanByte) {
            invertedBytes[dataLenght - index - 1] = bit;
            ++index;
        }
        return invertedBytes;
    }
}

Related

  1. invertArray(int[] a, int top)
  2. invertArray(Object[] data)
  3. invertBits(byte[] input)
  4. InvertBitsInByte(Boolean[] booleanByte)
  5. invertByteArray(byte[] array)
  6. invertedLength3(float[] a)
  7. inverter(double[] vector)
  8. invertHostNameFast(byte[] tokens, int offset, int length, byte[] destinationBuffer)
  9. invertI(long[] v)