Calendar Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
<strong>[icu enhancement]</strong> ICU's replacement for java.util.Calendar.
[Android.Runtime.Register("android/icu/util/Calendar", ApiSince=24, DoNotGenerateAcw=true)]
public abstract class Calendar : Java.Lang.Object, IDisposable, Java.IO.ISerializable, Java.Lang.ICloneable, Java.Lang.IComparable
[<Android.Runtime.Register("android/icu/util/Calendar", ApiSince=24, DoNotGenerateAcw=true)>]
type Calendar = class
inherit Object
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface ICloneable
interface IComparable
- Ereditarietà
- Derivato
- Attributi
- Implementazioni
Commenti
<strong>[icu enhancement]</strong> ICU's replacement for java.util.Calendar. Metodi, campi e altre funzionalità specifiche dell'ICU sono etichettati come "<strong>[icu]</strong>".
Calendarè una classe base astratta per la conversione tra un Date oggetto e un set di campi integer, ad YEAResempio , MONTHDAY, , HOURe così via. Un Date oggetto rappresenta un istante specifico nel tempo con precisione in millisecondi. Vedere Date per informazioni sulla Date classe .
Sottoclassi di Calendar interpretare un oggetto Date in base alle regole di un sistema di calendario specifico. ICU4J contiene diverse sottoclassi che implementano sistemi di calendario internazionali diversi.
Analogamente ad altre classi sensibili alle impostazioni locali, Calendar fornisce un metodo di classe, getInstance, per ottenere un oggetto generalmente utile di questo tipo.
CalendarIl metodo 's getInstance restituisce un calendario di un tipo appropriato alle impostazioni locali, i cui campi di ora sono stati inizializzati con la data e l'ora correnti: <blockquote>
Calendar rightNow = Calendar.getInstance()
</blockquote>
Quando un ULocale oggetto viene usato da getInstance, il tag e il valore 'calendar' vengono recuperati, se presenti. Se viene specificato un valore riconosciuto, viene fornito e configurato un calendario in base alle esigenze. Attualmente i tag riconosciuti sono "buddista", "cinese", "copto", "ethiopic", "gregoriano", "ebraico", "islamico", "islamic-civil", "giapponese" e "roc". Ad esempio: <blockquote>
Calendar cal = Calendar.getInstance(new ULocale("en_US@calendar=japanese"));
</blockquote> restituirà un'istanza di JapaneseCalendar (usando le convenzioni di en_US per i giorni minimi della prima settimana, il giorno di inizio della settimana e così via).
Un Calendar oggetto può produrre tutti i valori di campo dell'ora necessari per implementare la formattazione di data e ora per una lingua e uno stile di calendario specifici , ad esempio giapponese gregoriano Japanese-Traditional.
Calendar definisce l'intervallo di valori restituiti da determinati campi, nonché il relativo significato. Ad esempio, il primo mese dell'anno ha valore MONTH == JANUARY per tutti i calendari. Altri valori sono definiti dalla sottoclasse concreta, ad esempio ERA e YEAR. Per informazioni dettagliate, vedere la documentazione dei singoli campi e la documentazione della sottoclasse.
Quando un Calendar è <em>lenient</em>, accetta un intervallo più ampio di valori di campo rispetto a quello prodotto. Ad esempio, un leniente GregorianCalendar interpretaMONTH == JANUARY , DAY_OF_MONTH == 32 come 1 febbraio. Un non-leniente GregorianCalendar genera un'eccezione quando vengono specificate impostazioni di campo non compreso nell'intervallo. Quando i calendari ricompilano i valori dei campi per restituiti da get(), li normalizzano. Ad esempio, un GregorianCalendar produce DAY_OF_MONTH sempre valori compresi tra 1 e la lunghezza del mese.
Calendar definisce una settimana di sette giorni specifica delle impostazioni locali usando due parametri: il primo giorno della settimana e i giorni minimi della prima settimana (da 1 a 7). Questi numeri vengono ricavati dai dati delle risorse delle impostazioni locali quando viene costruito un oggetto Calendar . Possono anche essere specificati in modo esplicito tramite l'API.
Quando si impostano o si ottengono i WEEK_OF_MONTH campi o WEEK_OF_YEAR , Calendar è necessario determinare la prima settimana del mese o dell'anno come punto di riferimento. La prima settimana di un mese o di un anno viene definita come il primo periodo di sette giorni che inizia getFirstDayOfWeek() e contiene almeno getMinimalDaysInFirstWeek() giorni del mese o dell'anno. Settimane numerate ..., -1, 0 precedono la prima settimana; settimane numerate 2, 3,... seguirlo. Si noti che la numerazione normalizzata restituita da get() può essere diversa. Ad esempio, una sottoclasse specifica Calendar può designare la settimana prima della settimana 1 di un anno come settimana <em>n</em> dell'anno precedente.
Quando si calcola un Date campo da un'ora, possono verificarsi alcune circostanze speciali: potrebbero verificarsi informazioni insufficienti per calcolare Date (ad esempio solo anno e mese, ma nessun giorno nel mese), potrebbero verificarsi informazioni incoerenti (ad esempio "Martedì, 15 luglio 1996" - 15 luglio 1996 è effettivamente un lunedì) o l'ora di input potrebbe essere ambigua a causa della transizione del fuso orario.
<informazioni insufficienti>.</strong> Il calendario userà le informazioni predefinite per specificare i campi mancanti. Questo può variare in base al calendario; per il calendario gregoriano, il valore predefinito per un campo è uguale a quello dell'inizio dell'epoca, ad esempio YEAR = 1970, MONTH = GENNAIO, DATE = 1 e così via.
<informazioni forti>incoerenti.</strong> Se i campi sono in conflitto, il calendario darà la preferenza ai campi impostati più di recente. Ad esempio, quando si determina il giorno, il calendario cercherà una delle combinazioni di campi seguenti. Verrà usata la combinazione più recente, come determinato dal campo singolo impostato più di recente.
<blockquote>
MONTH + DAY_OF_MONTH
MONTH + WEEK_OF_MONTH + DAY_OF_WEEK
MONTH + DAY_OF_WEEK_IN_MONTH + DAY_OF_WEEK
DAY_OF_YEAR
DAY_OF_WEEK + WEEK_OF_YEAR
</blockquote>
Per l'ora del giorno:
<blockquote>
HOUR_OF_DAY
AM_PM + HOUR
</blockquote>
<forte>tempo di orologio muro ambiguo.</strong> Quando la differenza di ora rispetto all'ora UTC è cambiata, produce una fascia oraria ambigua intorno alla transizione. Ad esempio, molte località degli Stati Uniti osservano l'ora legale. Quando la data passa all'ora legale negli Stati Uniti, l'ora del muro passa dalle 12:59 (standard) alle 2:00 (luce legale). Di conseguenza, l'ora dell'orologio a muro dalle 1:00 alle 1:59 non esiste nella data. Quando l'ora del muro di input rientra in questo intervallo di tempo mancante, il calendario di ICU risolve l'ora usando l'offset UTC prima della transizione per impostazione predefinita. In questo esempio, le 13:30 vengono interpretate come ora solare 1:30 (non esistente), quindi il risultato finale sarà 2:30 ora legale.
Nella data che torna all'ora solare, l'ora del muro viene spostata indietro di un'ora alle 2:00. Quindi, l'ora del muro dalle 1:00 alle 1:59 si verifica due volte. In questo caso, il calendario di ICU risolve l'ora usando l'offset UTC dopo la transizione per impostazione predefinita. Ad esempio, le 13:30 della data vengono risolte come ora solare delle 1:30.
I comportamenti ambigui di risoluzione dell'ora del clock del muro possono essere personalizzati dalle API #setRepeatedWallTimeOption(int) calendario e #setSkippedWallTimeOption(int)da . Questi metodi sono disponibili in ICU 49 o versioni successive.
<nota forte>:</forte> per alcuni calendari non gregoriani, potrebbero essere necessari campi diversi per la disambiguazione completa. Ad esempio, una specifica completa del calendario astronomico arabo istoriale richiede anno, mese, giorno del mese <em>e</em> giorno della settimana in alcuni casi.
<nota forte>:/<forte> Esistono alcune possibili ambiguità nell'interpretazione di determinati tempi singolari, che vengono risolti nei modi seguenti: <ol><li> 24:00:00 "appartiene" al giorno seguente. Cioè, 23:59 il 31 dicembre 1969 < 24:00 il 1° gennaio 1970 < 24:01:00 il 1 gennaio 1970
Le stringhe di formato di data o ora non fanno parte della definizione di un calendario, in quanto devono essere modificabili o sostituibili dall'utente in fase di esecuzione. Usare DateFormat per formattare le date.
<metodi di manipolazione dei campi> sicuri</sicuri>
Calendar i campi possono essere modificati usando tre metodi: set(), add()e roll().
<campo delle modifiche complesse>set(f, value)</complesse> in f.value Imposta inoltre una variabile membro interna per indicare che il campo f è stato modificato. Anche se il campo f viene modificato immediatamente, i millisecondi del calendario non vengono ricalcolate fino a quando non viene eseguita la chiamata successiva a get(), getTime()o getTimeInMillis() . Di conseguenza, più chiamate a set() non attivano più calcoli non necessari. In seguito alla modifica di un campo tramite set(), altri campi possono anche cambiare, a seconda del campo, del valore del campo e del sistema del calendario. Inoltre, get(f) non restituirà value necessariamente dopo la ricompilazione dei campi. Le specifiche sono determinate dalla classe di calendario concreta.
<em>Example</em>: considera un GregorianCalendar valore originariamente impostato sul 31 agosto 1999. La chiamata set(Calendar.MONTH, Calendar.SEPTEMBER) imposta il calendario sul 31 settembre 1999. Si tratta di una rappresentazione interna temporanea che si risolve nel 1° ottobre 1999 se getTime()viene chiamato. Tuttavia, una chiamata a set(Calendar.DAY_OF_MONTH, 30) prima della chiamata a getTime() imposta il calendario sul 30 settembre 1999, poiché non si verifica alcuna ricompilazione dopo set() se stessa.
<strong>add(f, delta)</strong> aggiunge delta al campo f. Equivale a chiamare set(f, get(f) + delta) con due rettifiche:
<blockquote>
<forte>Aggiungi regola 1</forte>. Valore del campo f dopo la chiamata meno il valore di campo f prima della chiamata è delta, modulo qualsiasi overflow che si è verificato nel campo f. L'overflow si verifica quando un valore di campo supera l'intervallo e, di conseguenza, il campo più grande successivo viene incrementato o decrementato e il valore del campo viene regolato nuovamente nell'intervallo.
<forte>Aggiungi regola 2</strong>. Se si prevede che un campo più piccolo sia invariante, ma è impossibile che sia uguale al valore precedente a causa delle modifiche apportate al valore minimo o massimo dopo la modifica del campo f , quindi il relativo valore viene modificato in modo da essere il più vicino possibile al valore previsto. Un campo più piccolo rappresenta un'unità di tempo inferiore.
HOUR è un campo più piccolo di DAY_OF_MONTH. Non viene apportata alcuna modifica ai campi più piccoli che non devono essere invarianti. Il sistema di calendario determina quali campi devono essere invarianti.
</blockquote>
A differenza set()di , inoltre, add() forza una ricompilazione immediata dei millisecondi del calendario e di tutti i campi.
<em>Example</em>: considera un GregorianCalendar valore originariamente impostato sul 31 agosto 1999. La chiamata add(Calendar.MONTH, 13) imposta il calendario sul 30 settembre 2000.
<forte>Aggiungi regola 1</forte> imposta il MONTH campo su settembre, poiché l'aggiunta di 13 mesi ad agosto dà settembre del prossimo anno. Poiché DAY_OF_MONTH non può essere 31 nel mese di settembre in un GregorianCalendar, <la regola di aggiunta avanzata>2</strong> imposta su DAY_OF_MONTH 30, il valore più vicino possibile. Anche se si tratta di un campo più piccolo, DAY_OF_WEEK non viene modificato dalla regola 2, poiché si prevede di modificare quando il mese cambia in un oggetto GregorianCalendar.
<strong>roll(f, delta)</strong> aggiunge delta al campo f senza modificare campi più grandi. Equivale a chiamare add(f, delta) con la seguente regolazione:
<blockquote>
<regola>di rollback</avanzata avanzata>. I campi più grandi non vengono modificati dopo la chiamata. Un campo più grande rappresenta un'unità di tempo più grande.
DAY_OF_MONTH è un campo più grande di HOUR.
</blockquote>
<em>Example</em>: considera un GregorianCalendar valore originariamente impostato sul 31 agosto 1999. La chiamata roll(Calendar.MONTH, 8) imposta il calendario su 30 aprile, <forte>1999</strong>. Aggiungere la regola 1 imposta il MONTH campo su Aprile. L'utilizzo di , GregorianCalendarnon DAY_OF_MONTH può essere 31 nel mese di aprile. Aggiungere la regola 2 lo imposta sul valore più vicino possibile, 30. Infine, la <>regola< di roll forte/forte> mantiene il YEAR valore del campo del 1999.
<em>Example</em>: considera un GregorianCalendar set originariamente impostato su Domenica 6 giugno 1999. La chiamata roll(Calendar.WEEK_OF_MONTH, -1) imposta il calendario su martedì 1 giugno 1999, mentre la chiamata add(Calendar.WEEK_OF_MONTH, -1) imposta il calendario su domenica 30 maggio 1999. Ciò è dovuto al fatto che la regola di rollio impone un vincolo aggiuntivo: l'oggetto MONTH non deve cambiare quando viene eseguito il WEEK_OF_MONTH rollback. In combinazione con l'aggiunta della regola 1, la data risultante deve essere compresa tra martedì 1 giugno e sabato 5 giugno. In base all'aggiunta della regola 2, , DAY_OF_WEEKun oggetto invariante quando si modifica WEEK_OF_MONTH, è impostato su Martedì, il valore più vicino possibile a Domenica (dove domenica è il primo giorno della settimana).
<strong>Usage model</strong>. Per motivare il comportamento di add() e roll(), considerare un componente dell'interfaccia utente con pulsanti di incremento e decremento per il mese, il giorno e l'anno e un oggetto sottostante GregorianCalendar. Se l'interfaccia legge il 31 gennaio 1999 e l'utente preme il pulsante di incremento del mese, cosa deve leggere? Se l'implementazione sottostante usa set(), potrebbe leggere il 3 marzo 1999. Un risultato migliore sarebbe il 28 febbraio 1999. Inoltre, se l'utente preme di nuovo il pulsante di incremento del mese, dovrebbe leggere il 31 marzo 1999, non il 28 marzo 1999. Salvando la data originale e usando add() o roll(), a seconda che i campi più grandi debbano essere interessati, l'interfaccia utente può comportarsi come la maggior parte degli utenti si aspetterà in modo intuitivo.
<b Nota:>/b<> È consigliabile usare #roll roll sempre e #add add invece di tentare di eseguire operazioni aritmetiche direttamente nei campi di un oggetto Calendar. È possibile che Calendar le sottoclassi abbiano campi con comportamento non lineare, ad esempio mesi o giorni mancanti durante gli anni non bisestili. I metodi e add delle sottoclassi roll prenderanno in considerazione questo problema, mentre le semplici manipolazioni aritmetiche possono dare risultati non validi.
<big><><b>Calendar Architecture in ICU4J</b></big/big></big>
Recentemente l'implementazione di Calendar è cambiata in modo significativo per supportare meglio la sottoclasse. La classe originale Calendar è stata progettata per supportare la sottoclasse, ma aveva solo una sottoclasse implementata, GregorianCalendar. Con l'implementazione di diverse nuove sottoclassi del calendario, tra cui BuddhistCalendar, ChineseCalendarHebrewCalendar, IslamicCalendar, e JapaneseCalendar, l'API di sottoclasse è stata rielaborata accuratamente. Questa sezione descrive in dettaglio la nuova API di sottoclasse e altri modi in cui android.icu.util.Calendar differisce da java.util.Calendar.
<big><b>Changes</b></big>
Panoramica delle modifiche tra l'architettura classica Calendar e la nuova architettura.
<ul>
<li>La fields[] matrice è private ora invece di protected. Le sottoclassi devono accedervi usando i metodi #internalSet e #internalGet.
<b>Motivazione:</b> Le sottoclassi non devono accedere direttamente ai membri dei dati.</li>
<li>La time parola lunga è private ora invece di protected. Le sottoclassi possono accedervi usando il metodo #internalGetTimeInMillis, che non provoca un aggiornamento.
<b>Motivazione:</b> Le sottoclassi non devono accedere direttamente ai membri dei dati.</li>
<li>L'ambito della responsabilità delle sottoclassi è stato drasticamente ridotto. La maggior parte delle funzionalità possibili viene implementata nella Calendar classe di base. Di conseguenza, è molto più facile sottoclassare Calendar.
<b Motivation:/b Subclasses should not have to reimplement common code.b>Motivation:</b> Subclasses should not have to reimplement common code. Alcuni comportamenti sono comuni nei sistemi di calendario: la definizione e il comportamento dei campi relativi alla settimana e ai campi ora, il comportamento aritmetico (#add(int, int) add e #roll(int, int) roll) di molti campi e del sistema di convalida dei campi.</li>
<li>L'API di sottoclasse è stata completamente riprogettata.</li>
<li>La Calendar classe base contiene alcuni supporti algoritmici del calendario gregoriano che le sottoclassi possono usare (in particolare in #handleComputeFields). Le sottoclassi possono usare i metodi getGregorianXxx() per ottenere valori precompilate.
<b>Motivazione:</b> Questa operazione è richiesta da tutte le Calendar sottoclassi per implementare un comportamento coerente del fuso orario e i sistemi derivati dal gregoriano possono usare i dati già calcolati.</li>
<li>La FIELD_COUNT costante è stata rimossa. Utilizzare il #getFieldCount. Inoltre, l'API framework è stata aggiunta per consentire alle sottoclassi di definire campi aggiuntivi.
<b Motivazione: >/b<>Il numero di campi non è costante nei sistemi di calendario.</li>
<li>L'intervallo di date gestite è stato ristretto da +/- ~300.000.000 anni a +/- ~5.000.000 anni. In termini pratici, questo non deve influire sui client. Tuttavia, significa che il codice client non può essere garantito con risultati ben comportati con date come Date(Long.MIN_VALUE) o Date(Long.MAX_VALUE). È invece consigliabile usare le Calendar costanti protette.
<b>Motivazione:</b> Con l'aggiunta del #JULIAN_DAY campo, i numeri di giorno julian devono essere limitati a 32 bit int. In questo modo viene limitato l'intervallo complessivo supportato. Inoltre, la limitazione dell'intervallo supportato semplifica i calcoli rimuovendo il codice case speciale usato per supportare l'overflow aritmetico in prossimità di Long.MIN_VALUEmillis e Long.MAX_VALUE .</li>
<
>vengono implementati nuovi campi: #JULIAN_DAY definisce la specifica a campo singolo della data.
#MILLISECONDS_IN_DAY definisce una specifica a campo singolo dell'ora del muro.
#DOW_LOCAL e #YEAR_WOY implementare il comportamento localizzato giorno della settimana e della settimana dell'anno.</li>
<Le sottoclassi li>possono accedere a costanti millisecondi protette definite in Calendar.</li>
<Li>New API è stata aggiunta per supportare sottoclassi specifiche del calendario di DateFormat.</li>
<sono>state implementate diverse sottoclassi, che rappresentano vari sistemi di calendario internazionali.</li>
</ul>
<BIG><B>Subclass API</b></big>
L'API originale Calendar era basata sull'esperienza di implementazione di una sola sottoclasse, GregorianCalendar. Di conseguenza, tutti i kink di sottoclassazione non erano stati elaborati. La nuova API di sottoclasse è stata perfezionata in base a diverse sottoclassi implementate. Sono inclusi i metodi che devono essere sottoposti a override e metodi per le sottoclassi da chiamare. Le sottoclassi non hanno più accesso diretto a fields e stamp. Hanno invece una nuova API per accedervi. Le sottoclassi sono in grado di allocare la fields matrice tramite un metodo framework protetto. Ciò consente alle sottoclassi di specificare campi aggiuntivi.
Altre funzionalità sono state spostate nella classe di base. La classe base contiene ora gran parte dei macchinari di calcolo per supportare il calendario gregoriano. Questo si basa su due cose: (1) Molti calendari sono basati sul calendario gregoriano (come i calendari imperiali buddisti e giapponesi). (2) <em>Tutti< i calendari em> richiedono il supporto gregoriano di base per gestire i calcoli del fuso orario.
I calcoli comuni sono stati spostati in Calendar. Le sottoclassi non calcolano più i campi correlati alla settimana e i campi correlati all'ora. Questi sono comunemente gestiti per tutti i calendari dalla classe di base.
<b>Calcolo sottoclasse dei campi=> temporali</b>
I #ERAcampi , #YEAR#EXTENDED_YEAR, #MONTH, #DAY_OF_MONTH, e #DAY_OF_YEAR vengono calcolati dalla sottoclasse in base al giorno julian. Tutti gli altri campi vengono calcolati da Calendar.
<ul>
<Le sottoclassi li>devono implementare #handleComputeFields per calcolare i #ERAcampi , #YEAR#EXTENDED_YEAR, #MONTH, #DAY_OF_MONTH, e #DAY_OF_YEAR in base al valore del #JULIAN_DAY campo. Se sono presenti campi specifici del calendario non definiti da Calendar, devono essere calcolati anche. Questi sono gli unici campi che la sottoclasse deve calcolare. Tutti gli altri campi vengono calcolati dalla classe base, quindi i campi di tempo e settimana si comportano in modo coerente in tutti i calendari. La versione predefinita di questo metodo in Calendar implementa un calendario gregoriano proleptico. All'interno di questo metodo, le sottoclassi possono chiamare getGregorianXxx() per ottenere il mese di calendario gregoriano, il giorno del mese e l'anno esteso per la data specificata.</li>
</ul>
<b>Calcolo sottoclasse dei campi => time</b>
L'interpretazione della maggior parte dei valori di campo viene gestita interamente da Calendar.
Calendar determina i campi impostati, che non sono, che vengono impostati più di recente e così via. Inoltre, Calendar gestisce il calcolo dell'ora dai campi dell'ora e gestisce i campi correlati alla settimana. L'unica cosa che la sottoclasse deve fare è determinare l'anno esteso, in base ai campi dell'anno, e quindi, dato un anno esteso e un mese, deve restituire un numero di giorno julian.
<ul>
<Le sottoclassi li>devono implementare #handleGetExtendedYear per restituire l'anno esteso per questo sistema di calendario, in base a #YEAR, #EXTENDED_YEARe a tutti i campi utilizzati dal sistema di calendario che sono più grandi di un anno, ad esempio #ERA.</li>
<Le sottoclassi li>devono implementare #handleComputeMonthStart per restituire il numero di giorno julian associato a un mese e all'anno esteso. Questo è il numero di giorno julian del giorno prima del primo giorno del mese. Il numero del mese è in base zero. Questo calcolo non deve dipendere da alcun valore di campo.</li>
</ul>
<b>Altri metodi</b>
<ul>
<Le sottoclassi li>devono implementare #handleGetMonthLength per restituire il numero di giorni in un determinato mese di un determinato anno esteso. Il numero del mese, come sempre, è in base zero.</li>
<Le sottoclassi li>devono implementare #handleGetYearLength per restituire il numero di giorni nell'anno esteso specificato. Questo metodo viene usato da computeWeekFields per calcolare i #WEEK_OF_YEAR campi e #YEAR_WOY .</li>
<Le sottoclassi li>devono implementare #handleGetLimit per restituire i valori protetti di un campo, a seconda del valore di limitType. Questo metodo deve gestire solo i campi #ERA, #YEAR, #MONTH, #WEEK_OF_YEAR, #WEEK_OF_MONTH, #DAY_OF_MONTH#DAY_OF_YEAR#DAY_OF_WEEK_IN_MONTH#YEAR_WOY, e .#EXTENDED_YEAR Altri campi sono invarianti (rispetto al sistema di calendario) e vengono gestiti dalla classe di base.</li>
<li>Facoltativamente, le sottoclassi possono eseguire l'override per controllare i campi specifici della sottoclasse #validateField . Se il valore del campo non è compreso nell'intervallo, il metodo deve generare un'eccezione IllegalArgumentException. Il metodo può chiamare super.validateField(field) per gestire i campi in modo generico, ovvero per confrontarli con l'intervallo getMinimum(field)..getMaximum(field).</li>
<li>Facoltativamente, le sottoclassi possono eseguire l'override #handleCreateFields per creare una int[] matrice sufficientemente grande da contenere i campi del calendario. Questa operazione è necessaria solo se il calendario definisce campi aggiuntivi oltre a quelli definiti da Calendar. La lunghezza del risultato deve essere compresa tra il conteggio dei campi di base e massimo.</li>
<li>Facoltativamente, le sottoclassi possono eseguire l'override #handleGetDateFormat per creare un oggetto DateFormat appropriato per questo calendario. Questa operazione è necessaria solo se una sottoclasse di calendario ridefinisce l'uso di un campo (ad esempio, modifica il #ERA campo da un campo simbolico a un campo numerico) o definisce un campo aggiuntivo.</li>
<li>Facoltativamente, le sottoclassi possono eseguire l'override #roll roll e #add add gestire i campi discontinui. Ad esempio, nel calendario ebraico il mese " Adar I" si verifica solo negli anni bisestili; negli altri anni il calendario passa da Shevat (mese 4) ad Adar (mese 6). I HebrewCalendar#add HebrewCalendar.add metodi e HebrewCalendar#roll HebrewCalendar.roll prendono in considerazione questo, in modo che l'aggiunta di 1 mese a Shevat restituisca il risultato corretto (Adar) in un anno non bisestile. Il metodo #pinField pinField dell'utilità protetta è spesso utile quando si implementano questi due metodi.
</li>
</ul>
<big><b>Comportamento< normalizzato/b></big>
Il comportamento di determinati campi è stato reso coerente in tutti i sistemi di calendario e implementato in Calendar.
<ul>
<Li>Time è normalizzato. Anche se alcuni sistemi di calendario passano tra giorni al tramonto o in altri momenti, tutti i calendari ICU4J passano tra giorni a <>mezzanotte</em> della zona locale. Ciò consente a ICU4J di centralizzare i calcoli temporali in Calendar e di mantenere le corrispondenze di base tra i sistemi di calendario. Campi interessati: #AM_PM, #HOUR#HOUR_OF_DAY, #MINUTE, #SECOND, #MILLISECOND, #ZONE_OFFSET, e #DST_OFFSET.</li>
<Il comportamento del DST li>è normalizzato. Il comportamento dell'ora legale viene calcolato allo stesso modo per tutti i sistemi di calendario e dipende dal valore di diversi GregorianCalendar campi: #YEAR, #MONTHe #DAY_OF_MONTH. Di conseguenza, Calendar calcola sempre questi campi, anche per i sistemi di calendario non gregoriani. Questi campi sono disponibili per le sottoclassi.</li>
<le settimane li>sono normalizzate. Anche se le impostazioni locali definiscono la settimana in modo diverso, in termini di giorno in cui viene avviata e la designazione del numero di settimana uno di un mese o di un anno, usano tutti un meccanismo comune. Inoltre, il giorno della settimana ha una definizione semplice e coerente in tutta la storia. Ad esempio, anche se il calendario gregoriano ha introdotto una discontinuità quando è stata introdotta per la prima volta, il giorno della settimana non è stato interrotto. Per questo motivo, i campi #DAY_OF_WEEK, WEEK_OF_YEAR, WEEK_OF_MONTH#DAY_OF_WEEK_IN_MONTH, #DOW_LOCAL, , #YEAR_WOY vengono tutti calcolati in modo coerente nella classe base, in base a #EXTENDED_YEAR, #DAY_OF_YEAR#MONTH, e #DAY_OF_MONTH, calcolati dalla sottoclasse .</li>
</ul>
<big><b>Intervallo< supportato/b></grande>
L'intervallo consentito di Calendar è stato ristretto.
GregorianCalendar utilizzato per tentare di supportare l'intervallo di date con valori di millisecondi da Long.MIN_VALUE a Long.MAX_VALUE. Questo ha introdotto costruzioni imbarazzanti (hack) che rallentavano le prestazioni. Ha inoltre introdotto un comportamento non uniforme ai limiti. Il nuovo Calendar protocollo specifica l'intervallo massimo di date supportabili come quelle con numeri di giorno julian di -0x7F000000 a +0x7F000000. Corrisponde agli anni da circa 5.800.000 A.C. a circa 5.800.000 CE. I programmatori devono utilizzare le costanti protette in Calendar per specificare una data estremamente anticipata o estremamente tardiva.
<big><b>Note< generali/b></big>
<ul>
<le implementazioni di li>Calendars sono <em>proleptic</em>. Ad esempio, anche se il calendario gregoriano non è stato istituito fino al XIX secolo, la GregorianCalendar classe supporta date prima dell'inizio storico del calendario estendendo il sistema di calendario indietro nel tempo. Analogamente, l'oggetto HebrewCalendar si estende all'indietro prima dell'inizio del suo periodo in anni zero e negativi. Le sottoclassi non generano eccezioni perché una data precede l'inizio cronologico di un sistema di calendario. Implementano #handleGetLimit invece per restituire limiti appropriati per #YEARi campi , #ERAe così via. Quindi, se il calendario è impostato su non essere lenient, i valori dei campi out-of-range attiveranno un'eccezione.</li>
<le sottoclassi di sistema li>Calendar calcolano un <anno> esteso em</em>. Ciò differisce dal #YEAR campo in quanto varia su tutti i valori integer, inclusi i valori zero e negativi, e incapsula le informazioni del #YEAR campo e di tutti i campi più grandi. Pertanto, per il calendario gregoriano, viene #EXTENDED_YEAR calcolato come ERA==AD ? YEAR : 1-YEAR. Un altro esempio è il conteggio lungo mayan, che ha anni (KUN) e cicli annidati di anni (KATUN e BAKTUN). Il mayan #EXTENDED_YEAR viene calcolato come TUN + 20 * (KATUN + 20 * BAKTUN). La Calendar classe base usa il #EXTENDED_YEAR campo per calcolare i campi correlati alla settimana.</li>
</ul>
per android.icu.util.Calendar.
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.
Costruttori
| Nome | Descrizione |
|---|---|
| Calendar() |
Costruisce un calendario con il fuso orario predefinito e le impostazioni locali predefinite |
| Calendar(IntPtr, JniHandleOwnership) |
<strong>[icu enhancement]</strong> ICU's replacement for |
| Calendar(TimeZone, Locale) |
Costruisce un calendario con il fuso orario e le impostazioni locali specificati. |
| Calendar(TimeZone, ULocale) |
Costruisce un calendario con il fuso orario e le impostazioni locali specificati. |
Campi
| Nome | Descrizione |
|---|---|
| Am |
Valore del |
| AmPm |
Obsoleti.
Numero di campo per |
| April |
Valore del |
| August |
Valore del |
| BaseFieldCount |
Numero di campi definiti da questa classe. |
| Date |
Obsoleti.
Numero di campo per |
| DayOfMonth |
Obsoleti.
Numero di campo per |
| DayOfWeek |
Obsoleti.
Numero di campo per |
| DayOfWeekInMonth |
Obsoleti.
Numero di campo per |
| DayOfYear |
Obsoleti.
Numero di campo per |
| December |
Valore del |
| DowLocal |
Obsoleti.
<strong>[icu]</strong> Numero di campo per |
| DstOffset |
Obsoleti.
Numero di campo per |
| EpochJulianDay |
Il giorno julian dell'epoca, ovvero il 1° gennaio 1970 del calendario gregoriano. |
| Era |
Obsoleti.
Numero di campo per |
| ExtendedYear |
Obsoleti.
<strong>[icu]</strong> Numero di campo per |
| February |
Valore del |
| Friday |
Valore del |
| GreatestMinimum |
Tipo di limite per |
| Hour |
Obsoleti.
Numero di campo per |
| HourOfDay |
Obsoleti.
Numero di campo per |
| InternallySet |
Valore del timestamp |
| IsLeapMonth |
<strong>[icu]</strong> Field che indica se il mese corrente è un mese bisestile. |
| Jan11JulianDay |
Il giorno julian dell'epoca gregoriana, ovvero il 1 gennaio 1, 1 del calendario gregoriano. |
| January |
Valore del |
| JulianDay |
Obsoleti.
<strong>[icu]</strong> Numero campo per |
| July |
Valore del |
| June |
Valore del |
| LeastMaximum |
Tipo di limite per |
| March |
Valore del |
| MaxFieldCount |
Numero massimo di campi possibili. |
| Maximum |
Tipo di limite per |
| MaxJulian |
Il giorno massimo supportato da Julian. |
| MaxMillis |
Numero massimo di millisecondi di periodo supportati. |
| May |
Valore del |
| Millisecond |
Obsoleti.
Numero di campo per |
| MillisecondsInDay |
Obsoleti.
<strong>[icu]</strong> Numero di campo per |
| Minimum |
Tipo di limite per |
| MinimumUserStamp |
Se il timestamp |
| MinJulian |
Il giorno minimo supportato julian. |
| MinMillis |
Millisecondi minimi supportati. |
| Minute |
Obsoleti.
Numero di campo per |
| Monday |
Valore del |
| Month |
Obsoleti.
Numero di campo per |
| November |
Valore del |
| October |
Valore del |
| OneDay |
Numero di millisecondi in un giorno. |
| OneHour |
Numero di millisecondi in un'ora. |
| OneMinute |
Numero di millisecondi in un minuto. |
| OneSecond |
Numero di millisecondi in un secondo. |
| OneWeek |
Numero di millisecondi in una settimana. |
| OrdinalMonth |
<strong>[icu]</strong> Field che indica il mese. |
| Pm |
Valore del |
| ResolveRemap |
Valore su OR per risolvere i valori dei campi della tabella per il mapping. |
| Saturday |
Valore del |
| Second |
Obsoleti.
Numero di campo per |
| September |
Valore del |
| Sunday |
Valore del |
| Thursday |
Valore del |
| Tuesday |
Valore del |
| Undecimber |
Valore del |
| Unset |
Valore del timestamp |
| WalltimeFirst |
Obsoleti.
<strong>[icu]</strong>Option usato da |
| WalltimeLast |
Obsoleti.
<strong>[icu]</strong>Option usato da |
| WalltimeNextValid |
Obsoleti.
<strong>[icu]</strong>Option usata specificando |
| Wednesday |
Valore del |
| WeekOfMonth |
Obsoleti.
Numero di campo per |
| WeekOfYear |
Obsoleti.
Numero di campo per |
| Year |
Obsoleti.
Numero di campo per |
| YearWoy |
Obsoleti.
<strong>[icu]</strong> Numero di campo per |
| ZoneOffset |
Obsoleti.
Numero di campo per |
Proprietà
| Nome | Descrizione |
|---|---|
| Class |
Restituisce la classe di runtime di questo |
| FieldCount |
<strong>[icu]</strong> Restituisce il numero di campi definiti da questo calendario. |
| FirstDayOfWeek |
Restituisce il primo giorno della settimana, dove 1 = |
| GregorianDayOfMonth |
Restituisce il giorno del mese (in base 1) sul calendario gregoriano calcolato da |
| GregorianDayOfYear |
Restituisce il giorno dell'anno (in base 1) sul calendario gregoriano calcolato da |
| GregorianMonth |
Restituisce il mese (in base 0) sul calendario gregoriano calcolato da |
| GregorianYear |
Restituisce l'anno esteso del calendario gregoriano calcolato da |
| Handle |
Handle per l'istanza di Android sottostante. (Ereditato da Object) |
| Instance |
Restituisce un calendario utilizzando il fuso orario e le impostazioni locali predefiniti. |
| IsWeekend |
<strong>[icu]</strong> Restituisce true se la data e l'ora correnti del calendario sono nel fine settimana in questo sistema di calendario. |
| JniIdentityHashCode |
Ottiene il codice hash di identità assegnato a questo Java peer dal runtime di interoperabilità. (Ereditato da Object) |
| JniManagedPeerState |
<strong>[icu enhancement]</strong> ICU's replacement for |
| JniPeerMembers |
<strong>[icu enhancement]</strong> ICU's replacement for |
| Lenient |
Indica se l'interpretazione di data/ora deve essere leniente. -oppure- Specificare se l'interpretazione di data/ora deve essere leniente. |
| MaxDate |
Valore massimo supportato |
| MinDate |
Il valore minimo supportato |
| MinimalDaysInFirstWeek |
Restituisce i giorni minimi richiesti nella prima settimana dell'anno. -oppure- Imposta i giorni minimi richiesti nella prima settimana dell'anno. |
| PeerReference |
Ottiene il riferimento all'oggetto JNI per questo peer Java. (Ereditato da Object) |
| RepeatedWallTimeOption |
<strong>[icu]</strong>Ottiene il comportamento per la gestione del tempo a muro ripetuto più volte in transizioni di differenza di fuso orario negative. -oppure- <strong>[icu]</strong>Imposta il comportamento per la gestione del tempo della parete ripetendo più volte in transizioni di offset del fuso orario negative. |
| SkippedWallTimeOption |
<strong>[icu]</strong>Ottiene il comportamento per la gestione dell'ora del muro ignorata in transizioni di offset del fuso orario positive. -oppure- <strong>[icu]</strong>Imposta il comportamento per la gestione dell'ora del muro ignorata in transizioni di offset del fuso orario positive. |
| TemporalMonthCode |
Ottiene il valore Temporal monthCode corrispondente al mese per la data. -oppure- Imposta il monthCode temporale che è un identificatore stringa che inizia con il grafo letterale "M" seguito da due gragrafi che rappresentano il numero di mese con riempimento zero del mese corrente in un anno normale (non bisestile) e suffisso da un grafo letterale facoltativo "L" se si tratta di un mese bisestile in un calendario lunisolar. |
| ThresholdClass |
<strong>[icu enhancement]</strong> ICU's replacement for |
| ThresholdType |
<strong>[icu enhancement]</strong> ICU's replacement for |
| Time |
Restituisce l'ora corrente del calendario. -oppure- Imposta l'ora corrente del calendario con la data specificata. |
| TimeInMillis |
Restituisce l'ora corrente del calendario a lungo. -oppure- Imposta l'ora corrente del calendario dal valore long specificato. |
| TimeZone |
Restituisce il fuso orario. -oppure- Imposta il fuso orario con il valore del fuso orario specificato. |
| Type |
<strong>[icu]</strong> Restituisce la stringa del nome del tipo di calendario per questo oggetto Calendar. |
Metodi
| Nome | Descrizione |
|---|---|
| Add(CalendarField, Int32) |
Aggiungere un importo firmato a un campo specificato usando le regole del calendario. |
| After(Object) |
Confronta i record dei campi dell'ora. |
| Before(Object) |
Confronta i record dei campi dell'ora. |
| Clear() |
Cancella i valori di tutti i campi dell'ora. |
| Clear(CalendarField) |
Cancella il valore nel campo ora specificato. |
| Clone() |
Esegue l'override clonabile |
| CompareTo(Calendar) |
Confronta i tempi (in millis) rappresentati da due |
| Complete() |
Compila tutti i campi non set nell'elenco dei campi dell'ora. |
| ComputeFields() |
Converte il valore |
| ComputeGregorianFields(Int32) |
Calcolare l'anno di calendario gregoriano, il mese e il giorno del mese dal giorno julian. |
| ComputeGregorianMonthStart(Int32, Int32) |
Calcolare il giorno julian di un mese del calendario gregoriano. |
| ComputeJulianDay() |
Calcolare il numero di giorno julian come specificato dai campi del calendario. |
| ComputeMillisInDay() |
Calcolare i millisecondi nel giorno dai campi. |
| ComputeTime() |
Converte i valori del campo corrente in nel |
| ComputeZoneOffset(Int64, Int32) |
Questo metodo può presupporre che EXTENDED_YEAR sia stato impostato. |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
<strong>[icu enhancement]</strong> ICU's replacement for |
| Dispose() |
Rilascia le risorse contenute in questo peer Java. (Ereditato da Object) |
| Dispose(Boolean) |
Rilascia le risorse contenute in questo peer Java. (Ereditato da Object) |
| DisposeUnlessReferenced() |
<strong>[icu enhancement]</strong> ICU's replacement for |
| Equals(Object) |
<strong>[icu enhancement]</strong> ICU's replacement for |
| Equals(Object) |
Indica se un altro oggetto è "uguale a" questo. (Ereditato da Object) |
| FieldDifference(Date, CalendarField) |
<strong>[icu]</strong> Restituisce la differenza tra l'ora specificata e l'ora in cui l'oggetto calendario è impostato su . |
| FieldName(CalendarField) |
Restituisce un nome stringa per un campo, per il debug e le eccezioni. |
| FloorDivide(Int32, Int32, Int32[]) |
Dividere due interi, restituendo il pavimento del quoziente e il resto del modulo. |
| FloorDivide(Int32, Int32) |
Dividere due numeri interi, restituendo il pavimento del quoziente. |
| FloorDivide(Int64, Int32, Int32[]) |
Dividere due interi, restituendo il pavimento del quoziente e il resto del modulo. |
| FloorDivide(Int64, Int64) |
Dividere due numeri interi lunghi, restituendo il pavimento del quoziente. |
| Get(CalendarField) |
Restituisce il valore per un determinato campo temporale. |
| GetActualMaximum(CalendarField) |
Restituisce il valore massimo che questo campo potrebbe avere, data la data corrente. |
| GetActualMinimum(CalendarField) |
Restituisce il valore minimo che questo campo potrebbe avere, data la data corrente. |
| GetAvailableLocales() |
Restituisce l'elenco delle impostazioni locali per le quali sono installati Calendari. |
| GetDateTimeFormat(DateFormatStyle, Int32, Locale) |
<strong>[icu]</strong> Restituisce un valore |
| GetDateTimeFormat(DateFormatStyle, Int32, ULocale) |
<strong>[icu]</strong> Restituisce un valore |
| GetDisplayName(Locale) |
Restituisce il nome del calendario nella lingua delle impostazioni locali specificate. |
| GetDisplayName(ULocale) |
Restituisce il nome del calendario nella lingua delle impostazioni locali specificate. |
| GetFieldResolutionTable() |
Restituisce la matrice di risoluzione dei campi per il calendario. |
| GetGreatestMinimum(CalendarField) |
Restituisce il valore minimo più alto per il campo specificato, se varia. |
| GetHashCode() |
Restituisce un valore di codice hash per l'oggetto . (Ereditato da Object) |
| GetInstance(Locale) |
Restituisce un calendario utilizzando il fuso orario predefinito e le impostazioni locali specificate. |
| GetInstance(TimeZone, Locale) |
Restituisce un calendario con il fuso orario e le impostazioni locali specificati. |
| GetInstance(TimeZone, ULocale) |
Restituisce un calendario con il fuso orario e le impostazioni locali specificati. |
| GetInstance(TimeZone) |
Restituisce un calendario utilizzando il fuso orario specificato e le impostazioni locali predefinite. |
| GetInstance(ULocale) |
Restituisce un calendario utilizzando il fuso orario predefinito e le impostazioni locali specificate. |
| GetKeywordValuesForLocale(String, ULocale, Boolean) |
<strong>[icu]</strong> Dato una chiave e le impostazioni locali, restituisce una matrice di valori stringa in un ordine preferito che farebbe la differenza. |
| GetLeastMaximum(CalendarField) |
Restituisce il valore massimo minimo per il campo specificato, se varia. |
| GetLimit(CalendarField, Int32) |
Restituisce un limite per un campo. |
| GetMaximum(CalendarField) |
Restituisce il valore massimo per il campo ora specificato. |
| GetMinimum(CalendarField) |
Restituisce il valore minimo per il campo ora specificato. |
| GetStamp(CalendarField) |
Restituisce il timestamp di un campo. |
| GetWeekData() |
[icu] Restituisce una classe semplice e non modificabile di tipo struct per l'accesso ai dati della settimana in questo calendario. |
| GetWeekDataForRegion(String) |
[icu] Restituisce una classe semplice e non modificabile di tipo struct per l'accesso ai dati della settimana CLDR. |
| GregorianMonthLength(Int32, Int32) |
Restituisce la lunghezza di un mese del calendario gregoriano. |
| GregorianPreviousMonthLength(Int32, Int32) |
Restituisce la lunghezza di un mese precedente del calendario gregoriano. |
| HandleComputeFields(Int32) |
Le sottoclassi possono eseguire l'override di questo metodo per calcolare diversi campi specifici di ogni sistema del calendario. |
| HandleComputeJulianDay(Int32) |
Le sottoclassi possono eseguire l'override di questo. |
| HandleComputeMonthStart(Int32, Int32, Boolean) |
Restituisce il numero di giorno julian del giorno prima del primo giorno del mese specificato nell'anno esteso specificato. |
| HandleCreateFields() |
Le sottoclassi che usano campi aggiuntivi oltre a quelli definiti in |
| HandleGetDateFormat(String, Locale) |
Crea un oggetto |
| HandleGetDateFormat(String, String, Locale) |
Crea un oggetto |
| HandleGetDateFormat(String, ULocale) |
Crea un oggetto |
| HandleGetExtendedYear() |
Restituisce l'anno esteso definito dai campi correnti. |
| HandleGetLimit(CalendarField, Int32) |
API sottoclasse per la definizione di limiti di tipi diversi. |
| HandleGetMonthLength(Int32, Int32) |
Restituisce il numero di giorni nel mese specificato dell'anno esteso specificato di questo sistema di calendario. |
| HandleGetYearLength(Int32) |
Restituisce il numero di giorni nell'anno esteso specificato di questo sistema di calendario. |
| InTemporalLeapYear() |
<strong>[icu]</strong> Restituisce true se la data è in un anno bisestile. |
| InternalGet(CalendarField, Int32) |
Restituisce il valore per un determinato campo temporale oppure restituisce il valore predefinito specificato se il campo non è impostato. |
| InternalGet(CalendarField) |
Restituisce il valore per un determinato campo temporale. |
| InternalGetTimeInMillis() |
Restituisce i millisecondi correnti senza ricompilare. |
| InternalSet(CalendarField, Int32) |
Impostare un campo su un valore. |
| InvokeIsWeekend(Date) |
<strong>[icu]</strong> Restituisce true se la data e l'ora specificati sono nel fine settimana in questo sistema di calendario. |
| IsEquivalentTo(Calendar) |
<strong>[icu]</strong> Restituisce true se l'oggetto Calendar specificato è equivalente a questo. |
| IsGregorianLeapYear(Int32) |
Determina se l'anno specificato è un anno bisestile. |
| IsSet(CalendarField) |
Determina se il campo ora specificato ha un valore impostato. |
| JavaFinalize() |
Obsoleti.
Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto . (Ereditato da Object) |
| JulianDayToDayOfWeek(Int32) |
Restituisce il giorno della settimana, da DOMENICA a SABATO, dato un giorno julian. |
| JulianDayToMillis(Int32) |
Converte julian giorno in tempo come millisecondi. |
| MillisToJulianDay(Int64) |
Converte il tempo come millisecondi in giorno julian. |
| NewerField(Int32, Int32) |
Restituisce il campo più recente, defaultField o alternateField. |
| NewestStamp(Int32, Int32, Int32) |
Restituisce il timbro più recente di un determinato intervallo di campi. |
| Notify() |
Riattiva un singolo thread in attesa del monitor dell'oggetto. (Ereditato da Object) |
| NotifyAll() |
Riattiva tutti i thread in attesa del monitor dell'oggetto. (Ereditato da Object) |
| PinField(CalendarField) |
Modificare il campo specificato in modo che sia compreso nell'intervallo consentito per la data in cui è impostato il calendario. |
| PrepareGetActual(CalendarField, Boolean) |
Preparare questo calendario per calcolare il valore minimo o massimo effettivo. |
| ResolveFields(Int32[][][]) |
Data una tabella di precedenza, restituire la combinazione di campi più recente nella tabella o -1 se non viene trovata alcuna classe. |
| Roll(CalendarField, Boolean) |
Esegue il roll(up/down) di una singola unità di tempo nel campo specificato. |
| Roll(CalendarField, Int32) |
Esegue il rolling (su/giù) di un periodo di tempo specificato nel campo specificato. |
| Set(CalendarField, Int32) |
Imposta il campo ora con il valore specificato. |
| Set(Int32, Int32, Int32, Int32, Int32, Int32) |
Imposta i valori per i campi year, month, date, hour, minute e second. |
| Set(Int32, Int32, Int32, Int32, Int32) |
Imposta i valori per i campi anno, mese, data, ora e minuto. |
| Set(Int32, Int32, Int32) |
Imposta i valori per i campi anno, mese e data. |
| SetHandle(IntPtr, JniHandleOwnership) |
Imposta la proprietà Handle. (Ereditato da Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
<strong>[icu enhancement]</strong> ICU's replacement for |
| SetWeekData(Calendar+WeekData) |
[icu] Impostare i dati in questo calendario in base all'input WeekData. |
| ToArray<T>() |
Crea una matrice gestita da questo wrapper di matrice Java. (Ereditato da Object) |
| ToString() |
Restituisce una rappresentazione di stringa dell'oggetto . (Ereditato da Object) |
| UnregisterFromRuntime() |
Annulla la registrazione di questo Java peer dal runtime di interoperabilità. (Ereditato da Object) |
| ValidateField(CalendarField, Int32, Int32) |
Convalidare un singolo campo del calendario in base al valore minimo e massimo consentito. |
| ValidateField(CalendarField) |
Convalidare un singolo campo del calendario. |
| ValidateFields() |
Assicurarsi che ogni campo sia compreso nell'intervallo valido chiamando |
| Wait() |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo <>una notifica</em> o <em>interrotto</em>. (Ereditato da Object) |
| Wait(Int64, Int32) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale. (Ereditato da Object) |
| Wait(Int64) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale. (Ereditato da Object) |
| WeekNumber(Int32, Int32, Int32) |
Restituisce il numero di settimana di un giorno, entro un periodo. |
| WeekNumber(Int32, Int32) |
Restituisce il numero di settimana di un giorno, entro un periodo. |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| IComparable.CompareTo(Object) |
Confronta questo oggetto con l'oggetto specificato per l'ordine. |
| IJavaPeerable.Disposed() |
<strong>[icu enhancement]</strong> ICU's replacement for |
| IJavaPeerable.Finalized() |
<strong>[icu enhancement]</strong> ICU's replacement for |
| IJavaPeerable.JniObjectReferenceControlBlock |
<strong>[icu enhancement]</strong> ICU's replacement for |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
<strong>[icu enhancement]</strong> ICU's replacement for |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
<strong>[icu enhancement]</strong> ICU's replacement for |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
<strong>[icu enhancement]</strong> ICU's replacement for |
| IJavaPeerable.UnregisterFromRuntime() |
<strong>[icu enhancement]</strong> ICU's replacement for |
Metodi di estensione
| Nome | Descrizione |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ottiene il nome JNI del tipo dell'istanza |
| JavaAs<TResult>(IJavaPeerable) |
Provare a digitare |
| JavaCast<TResult>(IJavaObject) |
Esegue una conversione del tipo di tipo controllato dal runtime Android. |
| JavaCast<TResult>(IJavaObject) |
<strong>[icu enhancement]</strong> ICU's replacement for |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Provare a digitare |