出现java的int类型范围异常

请教大家一个问题,查数据的时候出现了这个错误,'1.50301132741E11' in column '7' is outside valid range for the datatype INTEGER.,百度的时候说是JAVA 读数据库时候用的是rs.getInt(i) 取出的结果超出了INT的范围,但是我用的hibernate,这个要怎么改,而且java的int类型范围不是2的32次方怎么还可能超过呢??

整数类型有范围的

数据类型 大小 范围 默认值

byte(字节) 8 -128 - 127 0
shot(短整型) 16 -32768 - 32768 0
int(整型) 32 -2147483648-2147483648 0
long(长整型) 64 -9233372036854477808-9233372036854477808 0

float(浮点型) 32 -3.40292347E+38-3.40292347E+38 0.0f
double(双精度) 64 -1.79769313486231570E+308-1.79769313486231570E+308 0.0d
char(字符型) 16 ‘ \u0000 - u\ffff ’ ‘\u0000 ’
boolean(布尔型) 1 true/false false

希望对你有用

1.50301132741E11
就是1.5 x 10^11,而2^32大概是4 x 10^9,当然已经超过了。
而且int还有符号,实际上只能表示2 x 10^9

超出int类型的范围,可以考虑用long。希望能够帮到您。

Int 的范围是负2的32次方到正2的31次方-1
负2147483648到正2147483647.

用long,或者转科学计数法