code: public void set(int field, int value)
      {
          // If the fields are partially normalized, calculate all the
          // fields before changing any fields.
          if (areFieldsSet && !areAllFieldsSet) {
              computeFields();
          }
          internalSet(field, value);
          isTimeSet = false;
          areFieldsSet = false;
          isSet[field] = true;
          stamp[field] = nextStamp++;
          if (nextStamp == Integer.MAX_VALUE) {
              adjustStamp();
          }
      }
docs: Sets the given calendar field to the given value. The value is not
  interpreted by this method regardless of the leniency mode.
  
  @param field the given calendar field.
  @param value the value to be set for the given calendar field.
  @throws ArrayIndexOutOfBoundsException if the specified field is out of range
  (<code>field &lt; 0 || field &gt;= FIELD_COUNT</code>).
  in non-lenient mode.
  @see #set(int,int,int)
  @see #set(int,int,int,int,int)
  @see #set(int,int,int,int,int,int)
  @see #get(int)