记录一次int类型相乘最后变成负数的问题。
int a = 60000000;
int b = 36;
当a*b 你会发现得当一个负数。
这是因为int(int 32)及2的32次方 取值范围 -2,147,483,648~2,147,483,647
a*b超过这个范围 int就会溢出,得到相乘的值就是一个负数
对于较大的值,可以使用long替换int
long也就是Int64,取值范围是-9223372036854775808~9223372036854775807
这样一般不会超出了