首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Joda DateTime今天正午

Joda DateTime今天正午
EN

Stack Overflow用户
提问于 2014-05-02 09:46:00
回答 2查看 1.1K关注 0票数 2

我有两个DateTime对象。第一次我刚走到午夜,第二次我想在12小时后(今天中午)开始。

两个物体都被设置为午夜刚刚消失。为什么会这样呢?我已经把12小时后定为长的,例如43300000。

提前感谢

代码语言:javascript
运行
复制
DateTimeFormatter fmt = DateTimeFormat.forPattern("d-MMM-Y H:mm");
        DateTime lastNightMidnight = new DateTime().toDateMidnight().toDateTime();
        String formattedLastNightMidnight = fmt.print(lastNightMidnight);
        textViewAwayFrom.setText(formattedLastNightMidnight);

        DateTime todayNoon = new DateTime().toDateMidnight().plus(43300000L).toDateTime();
        String formattedTodayNoon = fmt.print(todayNoon);
        textViewAwayTo.setText(formattedTodayNoon);

        Log.e(TAG, "lastNightMidnight = " + lastNightMidnight + " todayNoon = " + todayNoon);
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-02 11:05:33

  1. 您不应该使用DateMidnight,因为它是不推荐的。
  2. 您也不应该使用plusHours(12),因为您不想做算术,而只是设置一个小时的一天。

最好的方法是(参见javadoc):

代码语言:javascript
运行
复制
DateTime dt;
DateTime noon = dt.withHourOfDay(12);
票数 4
EN

Stack Overflow用户

发布于 2014-05-02 10:06:54

代码语言:javascript
运行
复制
DateTime todayNoon = new DateTime().toDateMidnight().toDateTime().plusHours(12);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23425172

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档