code: public static byte[] decodeHex(final char[] hexDatas) {
          if (hexDatas.length % 2 != 0) {
              throw new IllegalArgumentException("非法的16进制字符");
          }
          byte[] data = new byte[hexDatas.length >> 1];
          for (int i = 0; i < hexDatas.length; i += 2) {
              data[i >> 1] = (byte) ((indexAt((byte) hexDatas[i]) << 4)
                                     | indexAt((byte) hexDatas[i + 1]));
          }
          return data;
      }
docs: 将十六进制字符解析为byte数组
  @param hexDatas 16进制字符
  @return byte数组