public BigInteger (int signum, byte[] magnitude, int off, int len)

Translates the sign-magnitude representation of a BigInteger into a BigInteger. The sign is represented as an integer signum value: -1 for negative, 0 for zero, or 1 for positive. The magnitude is a sub-array of a byte array in big-endian byte-order: the most significant byte is the element at index off. A zero value of the length len is permissible, and will result in a BigInteger value of 0, whether signum is -1, 0 or 1. The magnitude array is assumed to be unchanged for the duration of the constructor call. An IndexOutOfBoundsException is thrown if the length of the array magnitude is non-zero and either off is negative, len is negative, or off+len is greater than the length of magnitude.

Parameters:
signum    signum of the number (-1 for negative, 0 for zero, 1 for positive).
magnitude    big-endian binary representation of the magnitude of the number.
off    the start offset of the binary representation.
len    the number of bytes to use.

Exceptions:
NumberFormatException    signum is not one of the three legal values (-1, 0, and 1), or signum is 0 and magnitude contains one or more non-zero bytes.
IndexOutOfBoundsException    if the provided array offset and length would cause an index into the byte array to be negative or greater than or equal to the array length.

Since:  9