思路
通过 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;
}