android - Java如何判断一个时间戳是否是昨天?
迷茫
迷茫 2017-04-18 10:52:36
[Java讨论组]

如题,根据时间戳怎么判断是不是昨天呢?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(3)
PHP中文网

JDK 内置方式

public static boolean isYesterday(long timestamp) {
    Calendar c = Calendar.getInstance();
    clearCalendar(c, Calendar.HOUR_OF_DAY, Calendar.MINUTE, Calendar.SECOND, Calendar.MILLISECOND);
    c.add(Calendar.DAY_OF_MONTH, -1);
    long firstOfDay = c.getTimeInMillis(); // 昨天最早时间

    c.setTimeInMillis(timestamp);
    clearCalendar(c, Calendar.HOUR_OF_DAY, Calendar.MINUTE, Calendar.SECOND, Calendar.MILLISECOND); // 指定时间戳当天最早时间

    return firstOfDay == c.getTimeInMillis();
}

private static void clearCalendar(Calendar c, int... fields) {
    for (int f : fields) {
        c.set(f, 0);
    }
}
伊谢尔伦
    ( ( timestamp - System.currentTimeMillis() ) / (3600 * 24) ) == -1
高洛峰
public boolean isYesterday(long time) {
    boolean isYesterday = false;
    Date date;
    try {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        date = sdf.parse(sdf.format(new Date()));
        if (time < date.getTime() && time > (date.getTime() - 24*60*60*1000)) {
            isYesterday = true;
        }
    } catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return isYesterday;
}
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号