### Question:
ByteUtil { public static byte bbc(byte... datas){ byte bbc = 0x00; for (int i = 0; i < datas.length; i++) { bbc ^= datas[i]; } return bbc; }  static byte[] int2BytesBigEndian(int i); static int bytes2IntBigEndian(byte... bytes); static byte[] long2BytesBigEndian(long l); static long bytes2LongBigEndian(byte... bytes); static byte[] int2BytesLittleEndian(int i); static int bytes2IntLittleEndian(byte... bytes); static byte[] long2BytesLittleEndian(long l); static long bytes2LongLittleEndian(byte... bytes); static byte[] reverse(byte... bytes); static int bytesIndexOf(byte[] source, byte[] target, int begin); static byte bbc(byte... datas); static byte[] crc16Modbus(byte... datas);  }### Answer:
@Test public void bbc() { assertEquals((byte) 0x29, ByteUtil.bbc(TextUtil.hex2Bytes("78 B0 00 01 01 42 00 00 00 01 00 00 00 00 00 00 09 5A FF FF F1 00 00 00 00 00 00 00"))); }