社区
Java
帖子详情
java中long与int转换的问题
MyBurden
2017-04-13 10:06:18
如图
目的是将秒数表示的时间转换为字符串日期时间
上图是秒数
经过将秒数乘以1000变成毫秒数后,
long now = 下图
是由于int的长度不够,但是long now = 1491118634 * 1000为什么会变成764982288,求各位大神解惑
...全文
554
4
打赏
收藏
java中long与int转换的问题
如图 目的是将秒数表示的时间转换为字符串日期时间 上图是秒数 经过将秒数乘以1000变成毫秒数后, long now = 下图 是由于int的长度不够,但是long now = 1491118634 * 1000为什么会变成764982288,求各位大神解惑
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
墨笙弘一
2017-04-14
打赏
举报
回复
应该是两个Int相乘 超出int范围了 后续操作应该和二进制有关系
闲云小鹤
2017-04-14
打赏
举报
回复
long now = 1491118634 * 1000 为什么变成764982288 先执行的 1491118634 * 1000 因为 1491118634和1000 都是int 所以得出来的值也是int类型 1491118634 * 1000 超过了 int的最大值 为什么等于764982288 举个例子int最大值2147483647+1 = -2147483648 你就知道了
老鼠拧刀满街找猫
2017-04-13
打赏
举报
回复
long now = 1491118634L * 1000;
要这么写,运算之前就指明是long类型的。要不然会先为int,数值过大就不可预期了,然后又把不准确的数值转为long,这样就出错了
MyBurden
2017-04-13
打赏
举报
回复
3q,我知道怎么把他改正确,需要把要转换的int先变为long再扩大长度. 但是我想知道的是long now = 1491118634 * 1000是怎么样变为764982288这个数的
Java
零基础入门之数据类型与运算符
让学生掌握
java
中
数据类型及运算符,掌握什么是变量以及标识符的命名规范 本课程是《
Java
零基础至高级应用》系统课程的第二章,全套课程精细讲解,高级课程超过其他机构30%的课程量,经过我们全套课程系统学习的同学...
java
中
long
类型
转换
为
int
类型
由
int
类型
转换
为
long
类型是向上
转换
,可以直接进行隐式
转换
,但由
long
类型
转换
为
int
类型是向下
转换
,可能会出现数据溢出情况: 主要以下几种
转换
方法,供参考: 一、强制类型
转换
[
java
]
long
ll = 300000;
int
ii = (
int
)ll; 二、调用
int
Value()方法 [
java
]
long
ll = 300000;
Java
中
long
(
Long
)与
int
(
Int
eger)之间的
转换
Java
中
long
(
Long
)与
int
(
Int
eger)之间的
转换
Java
中
如何将
int
类型
转换
为
Long
类型
Long
l = (
Long
)3;很多同学可能会用上面的方法将
int
类型
转换
为
Long
类型,但事实上这样是不可行的。因为
Long
是包装类,而
int
是值类型数据,两者是不能这样强转的。
long
l = (
long
)3;
int
和
long
都是基本类型的数据,是可以强转的,那么我就可以以此作为桥梁,强转成
long
后,再生成
Long
类型的数据。
Long
l = new
Long
((
long
)3);这样就可以将
java
里面
long
转换
int
内存分析
java
Long
.
int
Value() 内存分析,详细描述
转换
后有的为负值
Java
50,523
社区成员
85,601
社区内容
发帖
与我相关
我的任务
Java
Java相关技术讨论
复制链接
扫一扫
分享
社区描述
Java相关技术讨论
java
spring boot
spring cloud
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章