This can be explained when we understand what is returning longValue().
BigInteger . long int, 5.1.3 Java β’: BigInteger , , 64 . , BigInteger, .
-4694333933485660691 , , , long, , Integer.MIN_VALUE ( long), false d.
b c true, -4694333933485660691 , Long.MIN_VALUE, -4694333933485660691 Long.MAX_VALUE. , false b c, BigInteger, Long.MIN_VALUE AND Long.MAX_VALUE, longValue().