code: @Override
      public boolean useDaylightTime() {
          // If DST was observed in 1942 (for example) but has never been
          // observed from 1943 to the present, most clients will expect
          // this method to return FALSE.  This method determines whether
          // DST is in use in the current year (at any point in the year)
          // and returns TRUE if so.
          long current = System.currentTimeMillis();
  
          if (finalZone != null && current >= finalStartMillis) {
              return (finalZone != null && finalZone.useDaylightTime());
          }
  
          int[] fields = Grego.timeToFields(current, null);
  
          // Find start of this year, and start of next year
          long start = Grego.fieldsToDay(fields[0], 0, 1) * SECONDS_PER_DAY;
          long limit = Grego.fieldsToDay(fields[0] + 1, 0, 1) * SECONDS_PER_DAY;
  
          // Return TRUE if DST is observed at any time during the current
          // year.
          for (int i = 0; i < transitionCount; ++i) {
              if (transitionTimes64[i] >= limit) {
                  break;
              }
              if ((transitionTimes64[i] >= start && dstOffsetAt(i) != 0)
                      || (transitionTimes64[i] > start && i > 0 && dstOffsetAt(i - 1) != 0)) {
                  return true;
              }
          }
          return false;
      }
docs: /* (non-Javadoc)
  @see android.icu.util.TimeZone#useDaylightTime()