Java's long is a 64-bit signed two's-complement integer type, so its range runs from -2^63 to 2^63 - 1. The int type is the one bounded by -2^31 to 2^31 - 1, and there is no unsigned equivalent in standard Java for these primitives, so the -2^63 to 2^63 - 1 range is correct for long.