读书人

高手留步解决方案

发布时间: 2012-02-27 10:00:22 作者: rapoo

高手留步
int t = time(null) c++
请问换成JAVA代码应该怎样写

我 int startTime=(int)(System.currentTimeMillis()/1000)

好像有误

大家给个意见

[解决办法]
java的System.currentTimeMillis()时间是long型的

你为什么要转成int呢

错误应该没有吧,就是有一个提示数据丢失吧。
[解决办法]
像你这样错是不会的,因为进行了强制类型的转换,会造成数据的丢失而已
[解决办法]
1楼正解
[解决办法]

探讨
像你这样错是不会的,因为进行了强制类型的转换,会造成数据的丢失而已

[解决办法]
你这句没错误,强制类型转换,将long型强制转换成int型,但由于精度丢失,结果可能不能如你所愿,但语法上是没错误的
[解决办法]
up
[解决办法]
没错
LZ还是这样写吧
long startTime=System.currentTimeMillis()/1000;
[解决办法]

[解决办法]
肯定是类型转换的问题,Java中的类型机制很严谨,向下转型(大范围转小范围肯定要报错的)。
再来,Java中的把原有的long类型转换为int类型时候,如果数值较小还不会有什么问题,如果数值超过了int类型的话,就会出现错误数值(一般是一个负数,尤其是时间的转换)。
请使用long类型的变量就可以了。
[解决办法]
探讨
你这句没错误,强制类型转换,将long型强制转换成int型,但由于精度丢失,结果可能不能如你所愿,但语法上是没错误的

[解决办法]
探讨
肯定是类型转换的问题,Java中的类型机制很严谨,向下转型(大范围转小范围肯定要报错的)。
再来,Java中的把原有的long类型转换为int类型时候,如果数值较小还不会有什么问题,如果数值超过了int类型的话,就会出现错误数值(一般是一个负数,尤其是时间的转换)。
请使用long类型的变量就可以了。

[解决办法]
学习学习!

读书人网 >J2SE开发

热点推荐