为了账号安全,请及时绑定邮箱和手机立即绑定

出现java的int类型范围异常

出现java的int类型范围异常

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

5 回答

?
心有法竹

TA贡献1866条经验 获得超5个赞

整数类型有范围的

数据类型 大小 范围 默认值

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

希望对你有用


查看完整回答
反对 回复 2019-05-07
?
白衣染霜花

TA贡献1796条经验 获得超10个赞

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

查看完整回答
反对 回复 2019-05-07
?
拉风的咖菲猫

TA贡献1995条经验 获得超2个赞

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


查看完整回答
反对 回复 2019-05-07
?
MM们

TA贡献1886条经验 获得超2个赞

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

查看完整回答
反对 回复 2019-05-07
?
阿波罗的战车

TA贡献1862条经验 获得超6个赞

用long,或者转科学计数法


查看完整回答
反对 回复 2019-05-07
  • 5 回答
  • 0 关注
  • 720 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信