code: @Restricted(NoExternalUse.class)
      public static long daysBetween(@Nonnull Date a, @Nonnull Date b){
          LocalDate aLocal = a.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
          LocalDate bLocal = b.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
          return ChronoUnit.DAYS.between(aLocal, bLocal);
      }
docs: Compute the number of calendar days elapsed since the given date.
  As it's only the calendar days difference that matter, "11.00pm" to "2.00am the day after" returns 1,
  even if there are only 3 hours between. As well as "10am" to "2pm" both on the same day, returns 0.