出现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次方怎么还可能超过呢??


互换的青春
浏览 721回答 5
5回答

心有法竹

整数类型有范围的数据类型 大小 范围 默认值byte(字节) 8 -128 - 127 0shot(短整型) 16 -32768 - 32768 0int(整型) 32 -2147483648-2147483648 0long(长整型) 64 -9233372036854477808-9233372036854477808 0float(浮点型) 32 -3.40292347E+38-3.40292347E+38 0.0fdouble(双精度) 64 -1.79769313486231570E+308-1.79769313486231570E+308 0.0dchar(字符型) 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。希望能够帮到您。

MM们

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

阿波罗的战车

用long,或者转科学计数法
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java