Lenguaje

AbstractChronology.ResolveDate Método

Definición

Resuelve los valores analizados ChronoField en una fecha durante el análisis.

[Android.Runtime.Register("resolveDate", "(Ljava/util/Map;Ljava/time/format/ResolverStyle;)Ljava/time/chrono/ChronoLocalDate;", "GetResolveDate_Ljava_util_Map_Ljava_time_format_ResolverStyle_Handler", ApiSince=26)]
public virtual Java.Time.Chrono.IChronoLocalDate? ResolveDate(System.Collections.Generic.IDictionary<Java.Time.Temporal.ITemporalField,Java.Lang.Long>? fieldValues, Java.Time.Format.ResolverStyle? resolverStyle);
[<Android.Runtime.Register("resolveDate", "(Ljava/util/Map;Ljava/time/format/ResolverStyle;)Ljava/time/chrono/ChronoLocalDate;", "GetResolveDate_Ljava_util_Map_Ljava_time_format_ResolverStyle_Handler", ApiSince=26)>]
abstract member ResolveDate : System.Collections.Generic.IDictionary<Java.Time.Temporal.ITemporalField, Java.Lang.Long> * Java.Time.Format.ResolverStyle -> Java.Time.Chrono.IChronoLocalDate
override this.ResolveDate : System.Collections.Generic.IDictionary<Java.Time.Temporal.ITemporalField, Java.Lang.Long> * Java.Time.Format.ResolverStyle -> Java.Time.Chrono.IChronoLocalDate

Parámetros

fieldValues
IDictionary<ITemporalField,Long>

asignación de campos a valores, que se pueden actualizar, no null

resolverStyle
ResolverStyle

el tipo de resolución solicitado, no null

Devoluciones

la fecha resuelta, null si no hay suficiente información para crear una fecha

Implementaciones

Atributos

Comentarios

Resuelve los valores analizados ChronoField en una fecha durante el análisis.

La mayoría TemporalField de las implementaciones se resuelven mediante el método resolve en el campo . Por el contrario, la ChronoField clase define campos que solo tienen significado relativo a la cronología. Por lo tanto, ChronoField los campos de fecha se resuelven aquí en el contexto de una cronología específica.

ChronoField Este método resuelve instancias de , que se pueden invalidar en subclases. <ul><li>EPOCH_DAY : si está presente, esto se convierte en una fecha y todos los demás campos de fecha se comprueban cruzadamente con la fecha. <li>: si está presente, se divide en y YEARMONTH_OF_YEAR.PROLEPTIC_MONTH Si el modo es estricto o inteligente, se valida el campo. <li>YEAR_OF_ERA y ERA - Si ambos están presentes, se combinan para formar un YEAR. En modo leniento, el YEAR_OF_ERA rango no se valida, en modo inteligente y estricto es. ERA se valida para el intervalo en los tres modos. Si solo YEAR_OF_ERA está presente y el modo es inteligente o lenciente, se asume la última era disponible. En modo estricto, no se asume ninguna era y se YEAR_OF_ERA deja sin modificar. Si solo ERA está presente, se deja intacto. <li>YEAR, MONTH_OF_YEAR y DAY_OF_MONTH - Si los tres están presentes, se combinan para formar una fecha. En los tres modos, YEAR se valida . Si el modo es inteligente o estricto, se validan el mes y el día. Si el modo es lenciente, la fecha se combina de forma equivalente a crear una fecha en el primer día del primer mes del año solicitado, agregando la diferencia en meses y, a continuación, la diferencia en días. Si el modo es inteligente y el día del mes es mayor que el máximo para el mes-año, el día del mes se ajusta al último día del mes. Si el modo es estricto, los tres campos deben formar una fecha válida. <li>YEAR y DAY_OF_YEAR - Si ambos están presentes, se combinan para formar una fecha. En los tres modos, YEAR se valida . Si el modo es flexible, la fecha se combina de manera equivalente a crear una fecha en el primer día del año solicitado y, a continuación, agrega la diferencia en días. Si el modo es inteligente o estricto, los dos campos deben formar una fecha válida. <li>YEAR, MONTH_OF_YEAR, ALIGNED_WEEK_OF_MONTH y ALIGNED_DAY_OF_WEEK_IN_MONTH - Si los cuatro están presentes, se combinan para formar una fecha. En los tres modos, YEAR se valida . Si el modo es lenciente, la fecha se combina de forma equivalente a crear una fecha en el primer día del primer mes del año solicitado, agregando la diferencia en meses, la diferencia en semanas y luego en días. Si el modo es inteligente o estricto, los cuatro campos se validan en sus intervalos externos. A continuación, la fecha se combina de forma equivalente a crear una fecha en el primer día del año y mes solicitados y, a continuación, agregar la cantidad en semanas y días para alcanzar sus valores. Si el modo es estricto, la fecha se valida además para comprobar que el ajuste del día y la semana no cambiaron el mes. <li>YEAR, MONTH_OF_YEAR, ALIGNED_WEEK_OF_MONTH y DAY_OF_WEEK - Si los cuatro están presentes, se combinan para formar una fecha. El enfoque es el mismo que se ha descrito anteriormente durante años, meses y semanas en ALIGNED_DAY_OF_WEEK_IN_MONTH. El día de la semana se ajusta como el siguiente o el mismo día de la semana coincidente una vez que se han controlado los años, meses y semanas. <li>YEAR, ALIGNED_WEEK_OF_YEAR y ALIGNED_DAY_OF_WEEK_IN_YEAR - Si los tres están presentes, se combinan para formar una fecha. En los tres modos, YEAR se valida . Si el modo es flexible, la fecha se combina de forma equivalente a la creación de una fecha en el primer día del año solicitado y, a continuación, agrega la diferencia en semanas y, a continuación, en días. Si el modo es inteligente o estricto, los tres campos se validan en sus intervalos externos. A continuación, la fecha se combina de forma equivalente a la creación de una fecha en el primer día del año solicitado y, a continuación, se agrega la cantidad en semanas y días para alcanzar sus valores. Si el modo es estricto, la fecha se valida además para comprobar que el ajuste de día y semana no cambió el año. <li>YEAR, ALIGNED_WEEK_OF_YEAR y DAY_OF_WEEK - Si los tres están presentes, se combinan para formar una fecha. El enfoque es el mismo que se ha descrito anteriormente durante años y semanas en ALIGNED_DAY_OF_WEEK_IN_YEAR. El día de la semana se ajusta como el siguiente o el mismo día de la semana coincidente una vez que se han controlado los años y semanas. </ul>

La implementación predeterminada es adecuada para la mayoría de los sistemas de calendario. Si java.time.temporal.ChronoField#YEAR_OF_ERA se encuentra sin un java.time.temporal.ChronoField#ERA elemento , se usa la última era de #eras() . La implementación supone una semana de 7 días, que el primer día de mes tiene el valor 1, ese primer día de año tiene el valor 1 y que el primero del mes y el año siempre existe.

Java documentación para java.time.chrono.AbstractChronology.resolveDate(java.util.Map<java.time.temporal.TemporalField, java.lang.Long>, java.time.format.ResolverStyle).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Se aplica a