code: public static <T extends Appendable> T toHexString(T dst, byte[] src, int offset, int length) {
          assert length >= 0;
          if (length == 0) {
              return dst;
          }
  
          final int end = offset + length;
          final int endMinusOne = end - 1;
          int i;
  
          // Skip preceding zeroes.
          for (i = offset; i < endMinusOne; i++) {
              if (src[i] != 0) {
                  break;
              }
          }
  
          byteToHexString(dst, src[i++]);
          int remaining = end - i;
          toHexStringPadded(dst, src, i, remaining);
  
          return dst;
      }
docs: Converts the specified byte array into a hexadecimal value and appends it to the specified buffer.