在简单的计算中值不会累加

时间:2019-09-18 05:41:34

标签: kotlin timestamp

我正在尝试建立活动日历。每个事件都有一个日期,然后有一个开始时间。

我构建它的方式是,一旦用户选择一个日期,我就会获得该日期的基本时间戳,然后当他们选择小时和分钟时,我会在时间戳中添加适当的毫秒数来更改时间戳。< / p>

由于某种原因,我真的不明白,所有的值都很好,但它们并没有加在一起。没有错误,基本时间戳记值保持不变。

因此,在上一个操作中,我得到了基本的时间戳记,该时间戳记可以正常工作,然后使用此代码添加毫秒数。

    startTime.setOnTimeChangedListener { _, hourOfDay, minute ->

        if (baseMillis != null) {
            startDate =
                baseMillis!! + (hourOfDay.toLong() * 3600000) + (minute.toLong() * 60000)

            Log.d("timeestart", hourOfDay.toString())
            Log.d("timeestart", minute.toString())
            Log.d("timeestart", baseMillis.toString())
            Log.d("timeestart", (hourOfDay.toLong() * 3600000).toString())
            Log.d("timeestart", (minute.toLong() * 60000).toString())
            Log.d("timeestart", (baseMillis!! + (hourOfDay.toLong() * 3600000) + (minute.toLong() * 60000)).toString())
            Log.d("timeestart", startDate.toString())
        }
    }

这就是我要打印的内容:

2019-09-17 08:55:37.568 8080-8080/com.republicera D/timeestart: 9
2019-09-17 08:55:37.568 8080-8080/com.republicera D/timeestart: 55
2019-09-17 08:55:37.568 8080-8080/com.republicera D/timeestart: 1568670922872
2019-09-17 08:55:37.568 8080-8080/com.republicera D/timeestart: 32400000
2019-09-17 08:55:37.568 8080-8080/com.republicera D/timeestart: 3300000
2019-09-17 08:55:37.568 8080-8080/com.republicera D/timeestart: 1568706622872

您可以在日志3、4和5中清楚地看到这些变量中的每个变量的值都大于0,所以为什么当我尝试将它们相加时,该值仍保持原始值?

0 个答案:

没有答案