gpt4 book ai didi

java - 重置其他字段后如何重置日历对象中的时间参数?

转载 作者:行者123 更新时间:2023-12-02 12:48:15 25 4
gpt4 key购买 nike

我获取当前的Calendar对象并记录其值

Calendar now = Calendar.getInstance();
Log.v(TAG,now.toString())

我现在设置时间并记录值

now.set(Calendar.HOUR, 20 % 12);
now.set(Calendar.MINUTE,00);
now.set(Calendar.HOUR_OF_DAY,20);
now.set(Calendar.SECOND,0);
now.set(Calendar.MILLISECOND,0);
Log.v(TAG,now.toString())

当我并排比较两个日志时,我发现了差异

java.util.GregorianCalendar[time=1498086510685,areFieldsSet=true... 
java.util.GregorianCalendar[time=?,areFieldsSet=false...

所有其他字段似乎都相同

我想我有两个问题

  1. 如何将时间设置为正确的值?
  2. 如果我重置 time 参数,areFieldsSet 是否会自动设置?

最佳答案

如果您阅读了 java.util.Calendar 的 Javadocs(您应该这样做),您就会看到

set(f, value) changes calendar field f to value. In addition, it sets an internal member variable to indicate that calendar field f has been changed. Although calendar field f is changed immediately, the calendar's time value in milliseconds is not recomputed until the next call to get(), getTime(), getTimeInMillis(), add(), or roll() is made.

调用指定的函数之一。

关于java - 重置其他字段后如何重置日历对象中的时间参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44687693/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com