Steve杨
int 是占4个字节, 32个0`1 的表示能力就是 2^32 (4,294,967,296) 个整数. 可以想象一条数据, 我们把整数 0, 1, 2, ... 一直到2^32 - 1 (4,294,967,295) 都表示出来了.但是int 是带正负号的, 我们生活中需要用到负200 负1000 的概率要远大于 30亿, 35亿的情况, 说白了,我们不能只考虑正数, 所以把这2^32 左移动了一半, 这样我们的数轴就变成了-2147483648 ~~ 2147483647 这样我们就得到了int类型的最大值了最小值.类似的, 如果有一天int 变成6个节字或8个字节, 我们也能快速推导出新的上界下界了.备注: 我觉得以下2个数字大概有个印象, 2^32 = 4,294,967,296 约43亿2^31 = 4,294,967,296 / 2 = 2147483648 约21.5亿