public static Date getSpecialTimefromDate(Date currentDate){
Calendar calendar=Calendar.getInstance();
calendar.setTime(currentDate);
int minute=calendar.get(calendar.MINUTE);
int second=calendar.get(calendar.SECOND);
int millisecond=calendar.get(calendar.MILLISECOND);
boolean isSpecialTime=(minute==0||minute==10||minute==20||minute==30||minute==40||minute==50)&&second==0&&millisecond==0;
if(isSpecialTime){
return currentDate;
}else {
Calendar specialCalendar=Calendar.getInstance();
specialCalendar.setTime(currentDate);
specialCalendar.set(calendar.MINUTE,0);
specialCalendar.set(calendar.SECOND,0);
specialCalendar.set(calendar.MILLISECOND,0);
long minDiff=Long.MAX_VALUE;
Calendar res=Calendar.getInstance();
for(int i=0;i<=6;i++){
long diff=Math.abs(calendar.getTimeInMillis()-specialCalendar.getTimeInMillis());
if(diff<minDiff){
minDiff=diff;
res.setTime(specialCalendar.getTime());
}
specialCalendar.add(calendar.MINUTE,10);
}
return res.getTime();
}
}