java 如何计算今天 0 点到现在已经过去的分钟数

思路

通过 Calendar 的方法, 置为 0 时 0 分 0 秒 0 毫秒
当前时间减去该置 0 的时间, 剩下的即为今天 0 点到现在已经过去的毫秒数
再除以 1000 得到秒数, 除以 60 得到分钟数

  /**
     * 当前分钟数是否是 15 的倍数, 即 0, 15, 30, 45
     * @return
     */
    private boolean is15minMultiple(Date date) {


        Calendar calendar = Calendar.getInstance();

        // 可以计算当前到明天 0 点的剩余毫秒数
        // calendar.add(Calendar.DAY_OF_MONTH, 1);

        // 把时分秒毫秒都置为 0
        calendar.set(Calendar.HOUR_OF_DAY, 0);
        calendar.set(Calendar.MINUTE, 0);
        calendar.set(Calendar.SECOND, 0);
        calendar.set(Calendar.MILLISECOND, 0);

        // 获取 calendar 的毫秒数
        long today00 = calendar.getTimeInMillis();

        // 今天的已经度过的分钟数
        long todayMinutes = (date.getTime() - today00) / 1000 / 60;

        // 是否是 15min 的倍数, 取余而不是
        boolean is15minMultiple = todayMinutes % 15 == 0;
        return is15minMultiple;
    }


版权声明:本文为u012745499原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。