我看到这样的一个 构造函数
BigInteger(int signum, byte[] magnitude)
//Translates the sign-magnitude representation of a BigInteger into a BigInteger.
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 byte array in big-endian byte-order: the most significant byte is in the zeroth element. A zero-length magnitude array is permissible, and will result in a BigInteger value of 0, whether signum is -1, 0 or 1.
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.
Throws:
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.
翻译过来就是:
第一个参数 signNum 就是 符号,
- -1 代表我们将构造出一个 负数。
- 0 就代表构造一个0 吧
- 1 就是代表我们构造一个正数
第二个参数 是个byte array。它是一个大端表示的数字的幅度;(我们的电脑一般都是小端的)
参考:
https://docs.oracle.com/javase/8/docs/api/