code: void formatTimeZone_Z(StringBuilder b, ZonedDateTime d, int width) {
      if (width == 4) {
        // ZZZZ is same as OOOO
        formatTimeZone_O(b, d, width);
        return;
      }
  
      int[] tz = getTzComponents(d);
      if (width == 5 && tz[TZOFFSET] == 0) {
        b.append('Z');
        return;
      }
  
      switch (width) {
        case 5:
        case 3:
        case 2:
        case 1:
          if (tz[TZNEG] == -1) {
            b.append('-');
          } else {
            b.append('+');
          }
          
          zeroPad2(b, tz[TZHOURS], 2);
          // Delimiter omitted for all except XXXXX
          if (width == 5) {
            b.append(':');
          }
          zeroPad2(b, tz[TZMINS], 2);
          break;
      }
    }
docs: Format time zone in ISO8601 basic or extended format for field 'Z'.
  http://www.unicode.org/reports/tr35/tr35-dates.html#dfst-zone