如何将Double中的秒转换为秒和毫秒的两个int?

库尔特·瓦格纳

我有一个表示秒的任意Double变量,我希望将其转换为两个整数,因此可以添加到Calendar对象,但无法弄清楚如何将double基本上拆分为十进制和整数值。如果存在任何更好的实现,可以向日历添加Double seconds变量,我将接受其他实现。

Double someDouble = 2.5;
int seconds = 0, milli = 0;

//Get seconds to = 2, milli to = 500 from someDouble (pad with zeroes to get three places)

Calendar someCalendar = Calendar.getInstance();
someCalendar.add(Calendar.SECOND, seconds);
someCalendar.add(Calendar.MILLISECOND, milli);
西蒙妮·贾尼(Simone Gianni)

您不需要为此使用日历,这是一种更快的方法:

int seconds = (int)someDouble.doubleValue();
int milli = (int)((someDouble.doubleValue() - seconds) * 1000);

这是怎么回事:

  1. 您只需将double转换为(int)即可获取整数部分,从而使秒数
  2. 从双精度数减去秒数,得到0.5,然后乘以1000,因为它们是毫秒,然后再次将其转换为(int)

如果您不是Double而是Double,那么doubleValue()调用也可以省略:

double dtime = 2.5d; // or someDouble.doubleValue() if you need to convert
int seconds = (int)dtime;
int milli = (int)((dtime - seconds) * 1000);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将毫秒转换为分钟:秒输出?

如何将时间从hh:mm:ss.mmm转换为mysql的秒和毫秒

如何将秒转换为小时,分钟和秒?

除以两个Double并将Double商乘以Int时,如何将Double转换为Int?

如何将std :: chrono :: duration转换为double(秒)?

将纳秒转换为天、小时、分钟、秒、毫秒、微秒和纳秒

比较两个 DateTimes 忽略秒和毫秒

将varchar转换为分钟,秒和毫秒的时间格式?

将毫秒转换为小时,分钟和秒python

在Python中,如何将“ datetime”对象转换为秒?

如何将 awk 中的 DateTime 变量转换为秒?

如何精确地将毫秒转换为秒

如何将时间以分钟:秒格式转换为秒?

Groovy\Jenkins 中是否有一个班轮将毫秒转换为秒

如何将秒转换为分钟:as3中的秒

如何使用angularjs中的过滤器将秒转换为分钟和秒?

如何将具有两个通道的Mat转换为vector <vector <int >>?

dt.datetime减去两个日期以获取我如何摆脱或美化秒和毫秒之间的时间

熊猫:如何将int64 epoc秒的索引转换为日期时间

如何将度,分,秒和方向转换为经度和纬度坐标?

如何将 int 转换为计时毫秒

如何将JSON列表转换为CSV文件中的两个不同列?

将秒转换为(小时:分钟:秒:秒:毫秒)时间的最佳方法是什么?

如何将时间字符串转换为秒?

如何将时间字符串转换为秒

如何将“ 00:30:00”格式转换为秒?

如何将 QueryPerformanceCounter 转换为 Unix 纳秒(纪元)

如何将 tokenModel.ExpiresIn 转换为秒

如何将时间戳列转换为纪元秒?