IChronology Interfaccia

Definizione

Sistema di calendario, utilizzato per organizzare e identificare le date.

[Android.Runtime.Register("java/time/chrono/Chronology", "", "Java.Time.Chrono.IChronologyInvoker", ApiSince=26)]
public interface IChronology : IDisposable, Java.Interop.IJavaPeerable, Java.Lang.IComparable
[<Android.Runtime.Register("java/time/chrono/Chronology", "", "Java.Time.Chrono.IChronologyInvoker", ApiSince=26)>]
type IChronology = interface
    interface IComparable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Derivato
Attributi
Implementazioni

Commenti

Sistema di calendario, utilizzato per organizzare e identificare le date.

L'API principale di data e ora è basata sul sistema di calendario ISO. La cronologia opera dietro le quinte per rappresentare il concetto generale di un sistema di calendario. Ad esempio, il giapponese, Minguo, buddista thai e altri.

La maggior parte degli altri sistemi di calendario opera anche sui concetti condivisi dell'anno, del mese e del giorno, collegati ai cicli della Terra intorno al Sole e alla Luna intorno alla Terra. Questi concetti condivisi sono definiti da ChronoField e sono disponibili per l'uso da qualsiasi Chronology implementazione:

LocalDate isoDate = ...
              ThaiBuddhistDate thaiDate = ...
              int isoYear = isoDate.get(ChronoField.YEAR);
              int thaiYear = thaiDate.get(ChronoField.YEAR);

Come illustrato, anche se gli oggetti data si trovano in sistemi di calendario diversi, rappresentati da istanze diverse Chronology , entrambi possono essere sottoposti a query usando la stessa costante in ChronoField. Per una descrizione completa delle implicazioni di questa operazione, vedere ChronoLocalDate. In generale, il consiglio consiste nell'usare il noto basato su LocalDateISO anziché ChronoLocalDate.

Sebbene un Chronology oggetto usi ChronoField in genere e si basa su un modello era, year-of-era, month-of-year, day-of-month di una data, questo non è obbligatorio. Un'istanza Chronology può rappresentare un tipo completamente diverso di sistema di calendario, ad esempio il Mayan.

In termini pratici, l'istanza Chronology funge anche da factory. Il #of(String) metodo consente di cercare un'istanza in base all'identificatore, mentre il #ofLocale(Locale) metodo consente la ricerca in base alle impostazioni locali.

L'istanza Chronology fornisce un set di metodi per creare ChronoLocalDate istanze. Le classi date vengono utilizzate per modificare date specifiche. <ul><li>#dateNow(Clock) dateNow(clock)><<#dateNow() dateNow()li<>#dateNow(ZoneId) dateNow(zone)<>#date(int, int, int) date(yearProleptic, month, day)>><<#dateYearDay(int, int) dateYearDay(yearProleptic, dayOfYear)#dateYearDay(Era, int, int) dateYearDay(era, yearOfEra, dayOfYear)<>#date(Era, int, int, int) date(era, yearOfEra, month, day)/ul>#date(TemporalAccessor) date(TemporalAccessor)<>

<h2 id="addcalendars">Aggiunta di nuovi calendari</h2> Il set di cronologie disponibili può essere esteso dalle applicazioni. L'aggiunta di un nuovo sistema di calendario richiede la scrittura di un'implementazione di ChronologyChronoLocalDate e Era. La maggior parte della logica specifica per il sistema di calendario sarà nell'implementazione ChronoLocalDate . L'implementazione Chronology funge da factory.

Per consentire l'individuazione di cronologie aggiuntive, viene utilizzato .java.util.ServiceLoader ServiceLoader È necessario aggiungere un file alla META-INF/services directory con il nome 'java.time.chrono.Chronology' che elenca le classi di implementazione. Per altri dettagli sul caricamento del servizio, vedere ServiceLoader. Per la ricerca in base all'ID o calendarType, i calendari forniti dal sistema vengono trovati prima seguiti dai calendari forniti dall'applicazione.

Ogni cronologia deve definire un ID cronologia univoco all'interno del sistema. Se la cronologia rappresenta un sistema di calendario definito dalla specifica CLDR, il tipo di calendario è la concatenazione del tipo CLDR e, se applicabile, la variante CLDR.

Aggiunta nella versione 1.8.

Documentazione java per java.time.chrono.Chronology.

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Proprietà

Nome Descrizione
AvailableChronologies

Restituisce le cronologie disponibili.

CalendarType

Sistema di calendario, utilizzato per organizzare e identificare le date.

Handle

Ottiene il valore JNI dell'oggetto Android sottostante.

(Ereditato da IJavaObject)
Id

Sistema di calendario, utilizzato per organizzare e identificare le date.

JniIdentityHashCode

Restituisce il valore di java.lang.System.identityHashCode() per l'istanza di cui è stato eseguito il wrapping.

(Ereditato da IJavaPeerable)
JniManagedPeerState

Stato del peer gestito.

(Ereditato da IJavaPeerable)
JniPeerMembers

Supporto per l'accesso ai membri e la chiamata.

(Ereditato da IJavaPeerable)
PeerReference

Restituisce un JniObjectReference oggetto dell'istanza dell'oggetto di cui è stato eseguito il wrapping Java.

(Ereditato da IJavaPeerable)

Metodi

Nome Descrizione
CompareTo(IChronology)

Confronta questa cronologia con un'altra cronologia.

CompareTo(Object)

Confronta questo oggetto con l'oggetto specificato per l'ordine.

(Ereditato da IComparable)
Date(IEra, Int32, Int32, Int32)

Ottiene una data locale in questa cronologia dai campi era, year-of-era, month-of-year e day-of-month.

Date(Int32, Int32, Int32)

Ottiene una data locale in questa cronologia dai campi dell'anno proptico, del mese e del giorno del mese.

Date(ITemporalAccessor)

Ottiene una data locale in questa cronologia da un altro oggetto temporale.

DateEpochDay(Int64)

Ottiene una data locale in questa cronologia dal periodo-giorno.

DateNow()

Ottiene la data locale corrente in questa cronologia dall'orologio di sistema nel fuso orario predefinito.

DateNow(Clock)

Ottiene la data locale corrente in questa cronologia dall'orologio specificato.

DateNow(ZoneId)

Ottiene la data locale corrente in questa cronologia dall'orologio di sistema nel fuso orario specificato.

DateYearDay(IEra, Int32, Int32)

Ottiene una data locale in questa cronologia dai campi era, year-of-era e day-of-year.

DateYearDay(Int32, Int32)

Ottiene una data locale in questa cronologia dai campi dell'anno proptico e del giorno dell'anno.

Disposed()

Chiamato quando l'istanza è stata eliminata.

(Ereditato da IJavaPeerable)
DisposeUnlessReferenced()

Se non sono presenti riferimenti in sospeso a questa istanza, chiama Dispose(); in caso contrario, non esegue alcuna operazione.

(Ereditato da IJavaPeerable)
EpochSecond(IEra, Int32, Int32, Int32, Int32, Int32, Int32, ZoneOffset)

Ottiene il numero di secondi dal periodo 1970-01-01T00:00:00Z.

EpochSecond(Int32, Int32, Int32, Int32, Int32, Int32, ZoneOffset)

Ottiene il numero di secondi dal periodo 1970-01-01T00:00:00Z.

Equals(Object)

Controlla se questa cronologia è uguale a un'altra cronologia.

EraOf(Int32)

Crea l'oggetto cronologia dell'era dal valore numerico.

Eras()

Ottiene l'elenco di ere per la cronologia.

Finalized()

Chiamato quando l'istanza è stata finalizzata.

(Ereditato da IJavaPeerable)
From(ITemporalAccessor)

Ottiene un'istanza di Chronology da un oggetto temporale.

GetDisplayName(TextStyle, Locale)

Ottiene la rappresentazione testuale di questa cronologia.

GetHashCode()

Codice hash per questa cronologia.

IsLeapYear(Int64)

Controlla se l'anno specificato è un anno bisestile.

LocalDateTime(ITemporalAccessor)

Ottiene una data e ora locale in questa cronologia da un altro oggetto temporale.

Of(String)

Ottiene un'istanza di Chronology da un ID cronologico o un tipo di sistema di calendario.

OfLocale(Locale)

Ottiene un'istanza di Chronology da un'impostazione locale.

Period(Int32, Int32, Int32)

Ottiene un periodo per questa cronologia in base a anni, mesi e giorni.

ProlepticYear(IEra, Int32)

Calcola l'anno prolittico dato l'era e l'anno di era.

Range(ChronoField)

Ottiene l'intervallo di valori validi per il campo specificato.

ResolveDate(IDictionary<ITemporalField,Long>, ResolverStyle)

Risolve i valori analizzati ChronoField in una data durante l'analisi.

SetJniIdentityHashCode(Int32)

Impostare il valore restituito da JniIdentityHashCode.

(Ereditato da IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Sistema di calendario, utilizzato per organizzare e identificare le date.

(Ereditato da IJavaPeerable)
SetPeerReference(JniObjectReference)

Impostare il valore restituito da PeerReference.

(Ereditato da IJavaPeerable)
ToString()

Restituisce questa cronologia come .String

UnregisterFromRuntime()

Annullare la registrazione di questa istanza in modo che il runtime non lo restituisca dalle chiamate future Java.Interop.JniRuntime+JniValueManager.PeekValue .

(Ereditato da IJavaPeerable)
ZonedDateTime(Instant, ZoneId)

Ottiene un oggetto ChronoZonedDateTime in questa cronologia da un oggetto Instant.

ZonedDateTime(ITemporalAccessor)

Ottiene un oggetto ChronoZonedDateTime in questa cronologia da un altro oggetto temporale.

Metodi di estensione

Nome Descrizione
GetJniTypeName(IJavaPeerable)

Ottiene il nome JNI del tipo dell'istanza selfdi .

JavaAs<TResult>(IJavaPeerable)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

JavaCast<TResult>(IJavaObject)

Esegue una conversione del tipo di tipo controllato dal runtime Android.

JavaCast<TResult>(IJavaObject)

Sistema di calendario, utilizzato per organizzare e identificare le date.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

Si applica a