public static long[] breakdown(long t,@NonNull TimeUnit unit,boolean roundMillis){
  long days=unit.toDays(t);
  long hours=unit.toHours(t) % 24;
  long minutes=unit.toMinutes(t) % 60;
  long seconds=unit.toSeconds(t) % 60;
  long msecs=unit.toMillis(t) % 1000;
  if (roundMillis) {
    if (msecs >= 500) {
      seconds++;
      msecs=0;
      if (seconds == 60) {
        minutes++;
        seconds=0;
        if (minutes == 60) {
          hours++;
          minutes=0;
          if (hours == 24) {
            days++;
            hours=0;
          }
        }
      }
    }
  }
  return new long[]{days,hours,minutes,seconds,msecs};
}

public static long [ ] breakdown ( long t , @ NonNull TimeUnit unit , boolean roundMillis ) { long days = unit . toDays ( t ) ; long hours = unit . toHours ( t ) % 24 ; long minutes = unit . toMinutes ( t ) % 60 ; long seconds = unit . toSeconds ( t ) % 60 ; long msecs = unit . toMillis ( t ) % 1000 ; if ( roundMillis ) { if ( msecs >= 500 ) { seconds ++ ; msecs = 0 ; if ( seconds == 60 ) { minutes ++ ; seconds = 0 ; if ( minutes == 60 ) { hours ++ ; minutes = 0 ; if ( hours == 24 ) { days ++ ; hours = 0 ; } } } } } return new long [ ] { days , hours , minutes , seconds , msecs } ; }
returns a breakdown of a given time into its values in hours , minutes , seconds and milliseconds .
