@Test(expected = IllegalArgumentException.class) public void testXor_Different_Sizes() { xor(new byte[]{0x01, 0x02}, new byte[]{0x01}); }
public static byte[] xor(byte[] array1, byte[] array2) throws IllegalArgumentException { if (array1.length != array2.length) { throw new IllegalArgumentException("Arrays do not have the same length to perform the XOR operation."); } byte[] result = new byte[array1.length]; int i = 0; for (byte b : array1) { result[i] = (byte) (b ^ array2[i++]); } return result; }
ArrayUtils { public static byte[] xor(byte[] array1, byte[] array2) throws IllegalArgumentException { if (array1.length != array2.length) { throw new IllegalArgumentException("Arrays do not have the same length to perform the XOR operation."); } byte[] result = new byte[array1.length]; int i = 0; for (byte b : array1) { result[i] = (byte) (b ^ array2[i++]); } return result; } }
ArrayUtils { public static byte[] xor(byte[] array1, byte[] array2) throws IllegalArgumentException { if (array1.length != array2.length) { throw new IllegalArgumentException("Arrays do not have the same length to perform the XOR operation."); } byte[] result = new byte[array1.length]; int i = 0; for (byte b : array1) { result[i] = (byte) (b ^ array2[i++]); } return result; }  }
ArrayUtils { public static byte[] xor(byte[] array1, byte[] array2) throws IllegalArgumentException { if (array1.length != array2.length) { throw new IllegalArgumentException("Arrays do not have the same length to perform the XOR operation."); } byte[] result = new byte[array1.length]; int i = 0; for (byte b : array1) { result[i] = (byte) (b ^ array2[i++]); } return result; }  static byte[] reverseArray(byte[] array); static byte[] concatenate(byte[] a, byte b); static byte[] concatenate(byte a, byte[] b); static byte[] concatenate(byte[]... arrays); static byte[] concatenate(byte[] a, byte[] b); static byte[] getFirstNBytes(byte[] array, int nBytes); static byte[] getLastNBytes(byte[] array, int nBytes); static byte[] xor(byte[] array1, byte[] array2); static byte[] trimLeadingBytes(byte[] bytes, byte b); static byte[] trimLeadingZeroes(byte[] bytes); static byte[] trimTrailingBytes(byte[] bytes, byte b); static byte[] toPrimitive(final Byte[] array); static byte[] toByteArray(int v); static byte[] toByteArray(long v); }
ArrayUtils { public static byte[] xor(byte[] array1, byte[] array2) throws IllegalArgumentException { if (array1.length != array2.length) { throw new IllegalArgumentException("Arrays do not have the same length to perform the XOR operation."); } byte[] result = new byte[array1.length]; int i = 0; for (byte b : array1) { result[i] = (byte) (b ^ array2[i++]); } return result; }  static byte[] reverseArray(byte[] array); static byte[] concatenate(byte[] a, byte b); static byte[] concatenate(byte a, byte[] b); static byte[] concatenate(byte[]... arrays); static byte[] concatenate(byte[] a, byte[] b); static byte[] getFirstNBytes(byte[] array, int nBytes); static byte[] getLastNBytes(byte[] array, int nBytes); static byte[] xor(byte[] array1, byte[] array2); static byte[] trimLeadingBytes(byte[] bytes, byte b); static byte[] trimLeadingZeroes(byte[] bytes); static byte[] trimTrailingBytes(byte[] bytes, byte b); static byte[] toPrimitive(final Byte[] array); static byte[] toByteArray(int v); static byte[] toByteArray(long v);  }