美文网首页
Java中Integer类型数据溢出的原因分析

Java中Integer类型数据溢出的原因分析

作者: hero_2be8 | 来源:发表于2019-07-14 21:56 被阅读0次

背景:某个场景是需要将时间戳格式化为日期;采用的方案是将时间戳转换为毫秒再格式化成日期,先把时间戳乘以1000转换成毫秒,再通过Date格式化为日期,时间戳的数据类型是Integer;转换后的日期确是1969年;

原因分析:Integer类型占4字节,每个字节占8位二进制码,因此Integer类型总共占32位二进制码,去除首位的符号位,剩下31位则用来表示数值,所以Integer的取值范围是2^31次方即-2147483648至2147483647;Long类型占8字节,取值范围是2^63次方即-9223372036854775808至9223372036854775807;Byte类型占1字节,取值范围是2^7次方即-128至127;

相关文章

网友评论

      本文标题:Java中Integer类型数据溢出的原因分析

      本文链接:https://www.haomeiwen.com/subject/ipxekctx.html