GregorianCalendar クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
GregorianCalendar は Calendar の具体的なサブクラスであり、世界中のほとんどのユーザーが使用する標準的なカレンダー システムを提供します。
[Android.Runtime.Register("java/util/GregorianCalendar", DoNotGenerateAcw=true)]
public class GregorianCalendar : Java.Util.Calendar
[<Android.Runtime.Register("java/util/GregorianCalendar", DoNotGenerateAcw=true)>]
type GregorianCalendar = class
inherit Calendar
- 継承
- 属性
注釈
GregorianCalendar は Calendar の具体的なサブクラスであり、世界中のほとんどのユーザーが使用する標準的なカレンダー システムを提供します。
GregorianCalendar は、単一の不連続性をサポートするユリウス暦とグレゴリオ暦システムの両方をサポートするハイブリッド カレンダーです。これは、グレゴリオ暦が制定されたグレゴリオ暦の日付 (一部の国では 1582 年 10 月 15 日、それ以外の国では 10 月 15 日) に既定で対応します。
#setGregorianChange(Date) setGregorianChange()を呼び出すことによって、呼び出し元がカットオーバーの日付を変更できます。
歴史的に、1582年10月4日にグレゴリオ暦を初めて採用した国では、ユリウス暦は1582年10月15日(グレゴリオ暦)に続きました。 このカレンダーはこれを正しくモデル化します。 グレゴリオ暦のカットオーバーの前に、 GregorianCalendar はユリウス暦を実装します。 グレゴリオ暦とユリウス暦の唯一の違いは閏年の規則です。 ユリウス暦は閏年を 4 年ごとに指定しますが、グレゴリオ暦では 400 年で割り切れない世紀の年が省略されています。
GregorianCalendar
<em>proleptic</em>グレゴリオ暦とユリウス暦を実装します。 つまり、日付は、現在のルールを無限に前後に推定することによって計算されます。 その結果、 GregorianCalendar は、意味のある一貫性のある結果を生成するために、すべての年に使用できます。 しかし、 GregorianCalendar を使用して取得された日付は、現代のユリウス暦の規則が採用された 3 月 1 日以降にのみ、歴史的に正確です。 この日付より前は閏年の規則が不規則に適用され、紀元前45年より前にはユリウス暦も存在しませんでした。
グレゴリオ暦の機関の前に、元日は 3 月 25 日でした。 混乱を避けるために、このカレンダーでは常に 1 月 1 日が使用されます。 グレゴリオ暦の変更前で、1 月 1 日から 3 月 24 日の間に該当する日付については、必要に応じて手動で調整できます。
<h2>"week_and_year">Week Of Year and Week Year</h2>
Calendar#WEEK_OF_YEAR WEEK_OF_YEAR フィールドに対して計算される値の範囲は 1 から 53 です。 暦年の最初の週は、その年から少なくともCalendar#getFirstDayOfWeek() getFirstDayOfWeek()日を含むCalendar#getMinimalDaysInFirstWeek() getMinimalDaysInFirstWeek()から始まる最も早い 7 日間の期間です。 したがって、 getMinimalDaysInFirstWeek()、 getFirstDayOfWeek()、および 1 月 1 日の曜日の値によって異なります。 1 年の第 1 週から翌年の第 1 週までの週 (排他) は、2 から 52 または 53 (Julian-Gregorian 移行に関係する年を除く) に順番に番号付けされます。
getFirstDayOfWeek()とgetMinimalDaysInFirstWeek()の値は、GregorianCalendarを構築するときにロケールに依存するリソースを使用して初期化されます。 "iso8601_compatible_setting">週の決定は、 getFirstDayOfWeek() が MONDAY 、 getMinimalDaysInFirstWeek() が 4 の場合に ISO 8601 標準と互換性があり、標準が優先されるロケールで使用される値です。 これらの値は、 Calendar#setFirstDayOfWeek(int) setFirstDayOfWeek() と Calendar#setMinimalDaysInFirstWeek(int) setMinimalDaysInFirstWeek()を呼び出すことによって明示的に設定できます。
"week_year"><em>week year</em> は、 WEEK_OF_YEAR サイクルと同期しています。 最初と最後の週 (含む) の間のすべての週は、同じ <em>week 年</em> 値を持っています。 したがって、1 週間の最初と最後の日の年の値が異なる場合があります。
たとえば、1998 年 1 月 1 日は木曜日です。
getFirstDayOfWeek()がMONDAYで、getMinimalDaysInFirstWeek()が 4 (ISO 8601 標準互換設定) の場合、1998 年の第 1 週は 1997 年 12 月 29 日に開始され、1998 年 1 月 4 日に終了します。 週の年は、1997 年の最後の 3 日間の 1998 年です。 ただし、 getFirstDayOfWeek() が SUNDAY場合、1998 年の第 1 週は 1998 年 1 月 4 日に始まり、1998 年 1 月 10 日に終了します。1998 年の最初の 3 日間は 1997 年の第 53 週の一部であり、その週の年は 1997 です。
<h3>月の週</h3>
WEEK_OF_MONTH フィールドに対して計算される値の範囲は 0 から 6 です。 月の第 1 週 ( WEEK_OF_MONTH = 1の日) は、その月の少なくとも getMinimalDaysInFirstWeek() 連続した日の最も早いセットであり、 getFirstDayOfWeek()の前日に終わる。 年の第 1 週とは異なり、1 か月の第 1 週は 7 日より短く、 getFirstDayOfWeek()で開始する必要はありません。また、前月の日は含まれません。 第 1 週の前の月の日数には、 WEEK_OF_MONTH 0 があります。
たとえば、 getFirstDayOfWeek() が SUNDAY で、 getMinimalDaysInFirstWeek() が 4 の場合、1998 年 1 月の最初の週は 1 月 4 日 (日) から 1 月 10 日 (土曜日) になります。 これらの日の WEEK_OF_MONTH は 1 です。 1 月 1 日 (木) から 1 月 3 日 (土) の WEEK_OF_MONTH は 0 です。
getMinimalDaysInFirstWeek()が 3 に変更された場合、1 月 1 日から 1 月 3 日までのWEEK_OF_MONTHは 1 になります。
<h3>Default フィールド値</h3>
clearメソッドは、カレンダー フィールドを未定義に設定します。
GregorianCalendar では、その値が未定義の場合、カレンダー フィールドごとに次の既定値が使用されます。
<table class="striped" style="text-align: left;width: 66%;"><caption style="display:none">GregorianCalendar の既定のフィールド値</caption><thead><tr><th scope="col"> Field </th><th scope="col"> Default Value </th><// tr></thead><tbody><tr><th scope="row">ERA</th><td>AD</td></tr><tr><th scope="row">YEAR</th><td>1970</td></tr><tr><th scope="row">MONTH</th><td>JANUARY</td></tr><tr><th scope="row">DAY_OF_MONTH</th><td>1</td></tr ><tr><th scope="row">DAY_OF_WEEK</th><td>the first day of week</td></tr><tr><th scope="row">WEEK_OF_MONTH</th><td>0</td></tr><tr><th scope="row">DAY_OF_WEEK_IN_MONTH</th><td>1</td></tr><tr><th scope="row">AM_PM</th><td>AM</td ></tr><tr><th scope="row">HOUR, HOUR_OF_DAY, MINUTE, SECOND, MILLISECOND</th><td>0</td></tr></tbody></table><br>既定値は、上記以外のフィールドには適用されません。
<strong>Example:</strong><blockquote>
// get the supported ids for GMT-08:00 (Pacific Standard Time)
String[] ids = TimeZone.getAvailableIDs(-8 * 60 * 60 * 1000);
// if no ids were returned, something is wrong. get out.
if (ids.length == 0)
System.exit(0);
// begin output
System.out.println("Current Time");
// create a Pacific Standard Time time zone
SimpleTimeZone pdt = new SimpleTimeZone(-8 * 60 * 60 * 1000, ids[0]);
// set up rules for Daylight Saving Time
pdt.setStartRule(Calendar.APRIL, 1, Calendar.SUNDAY, 2 * 60 * 60 * 1000);
pdt.setEndRule(Calendar.OCTOBER, -1, Calendar.SUNDAY, 2 * 60 * 60 * 1000);
// create a GregorianCalendar with the Pacific Daylight time zone
// and the current date and time
Calendar calendar = new GregorianCalendar(pdt);
Date trialTime = new Date();
calendar.setTime(trialTime);
// print out a bunch of interesting things
System.out.println("ERA: " + calendar.get(Calendar.ERA));
System.out.println("YEAR: " + calendar.get(Calendar.YEAR));
System.out.println("MONTH: " + calendar.get(Calendar.MONTH));
System.out.println("WEEK_OF_YEAR: " + calendar.get(Calendar.WEEK_OF_YEAR));
System.out.println("WEEK_OF_MONTH: " + calendar.get(Calendar.WEEK_OF_MONTH));
System.out.println("DATE: " + calendar.get(Calendar.DATE));
System.out.println("DAY_OF_MONTH: " + calendar.get(Calendar.DAY_OF_MONTH));
System.out.println("DAY_OF_YEAR: " + calendar.get(Calendar.DAY_OF_YEAR));
System.out.println("DAY_OF_WEEK: " + calendar.get(Calendar.DAY_OF_WEEK));
System.out.println("DAY_OF_WEEK_IN_MONTH: "
+ calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH));
System.out.println("AM_PM: " + calendar.get(Calendar.AM_PM));
System.out.println("HOUR: " + calendar.get(Calendar.HOUR));
System.out.println("HOUR_OF_DAY: " + calendar.get(Calendar.HOUR_OF_DAY));
System.out.println("MINUTE: " + calendar.get(Calendar.MINUTE));
System.out.println("SECOND: " + calendar.get(Calendar.SECOND));
System.out.println("MILLISECOND: " + calendar.get(Calendar.MILLISECOND));
System.out.println("ZONE_OFFSET: "
+ (calendar.get(Calendar.ZONE_OFFSET)/(60*60*1000)));
System.out.println("DST_OFFSET: "
+ (calendar.get(Calendar.DST_OFFSET)/(60*60*1000)));
System.out.println("Current Time, with hour reset to 3");
calendar.clear(Calendar.HOUR_OF_DAY); // so doesn't override
calendar.set(Calendar.HOUR, 3);
System.out.println("ERA: " + calendar.get(Calendar.ERA));
System.out.println("YEAR: " + calendar.get(Calendar.YEAR));
System.out.println("MONTH: " + calendar.get(Calendar.MONTH));
System.out.println("WEEK_OF_YEAR: " + calendar.get(Calendar.WEEK_OF_YEAR));
System.out.println("WEEK_OF_MONTH: " + calendar.get(Calendar.WEEK_OF_MONTH));
System.out.println("DATE: " + calendar.get(Calendar.DATE));
System.out.println("DAY_OF_MONTH: " + calendar.get(Calendar.DAY_OF_MONTH));
System.out.println("DAY_OF_YEAR: " + calendar.get(Calendar.DAY_OF_YEAR));
System.out.println("DAY_OF_WEEK: " + calendar.get(Calendar.DAY_OF_WEEK));
System.out.println("DAY_OF_WEEK_IN_MONTH: "
+ calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH));
System.out.println("AM_PM: " + calendar.get(Calendar.AM_PM));
System.out.println("HOUR: " + calendar.get(Calendar.HOUR));
System.out.println("HOUR_OF_DAY: " + calendar.get(Calendar.HOUR_OF_DAY));
System.out.println("MINUTE: " + calendar.get(Calendar.MINUTE));
System.out.println("SECOND: " + calendar.get(Calendar.SECOND));
System.out.println("MILLISECOND: " + calendar.get(Calendar.MILLISECOND));
System.out.println("ZONE_OFFSET: "
+ (calendar.get(Calendar.ZONE_OFFSET)/(60*60*1000))); // in hours
System.out.println("DST_OFFSET: "
+ (calendar.get(Calendar.DST_OFFSET)/(60*60*1000))); // in hours
</blockquote>
1.1 で追加されました。
java.util.GregorianCalendarの Java ドキュメント。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
コンストラクター
| 名前 | 説明 |
|---|---|
| GregorianCalendar() |
既定の |
| GregorianCalendar(Int32, Int32, Int32, Int32, Int32, Int32) |
既定のロケールを持つ既定のタイム ゾーンに対して設定された日付と時刻を持つグレゴリオ暦のCalendar を構築します。 |
| GregorianCalendar(Int32, Int32, Int32, Int32, Int32) |
既定のロケールを持つ既定のタイム ゾーンに対して、指定された日時が設定された |
| GregorianCalendar(Int32, Int32, Int32) |
指定した日付が既定のタイム ゾーンに既定のロケールで設定された |
| GregorianCalendar(IntPtr, JniHandleOwnership) |
JNI オブジェクトのマネージド表現を作成するときに使用されるコンストラクター。ランタイムによって呼び出されます。 |
| GregorianCalendar(Locale) |
指定されたロケールを持つ既定のタイム ゾーンの現在の時刻に基づいて、 |
| GregorianCalendar(TimeZone, Locale) |
指定されたロケールを持つ特定のタイム ゾーンの現在の時刻に基づいて、 |
| GregorianCalendar(TimeZone) |
既定の |
フィールド
| 名前 | 説明 |
|---|---|
| Ad |
CE とも呼ばれる一般的な時代 (Anno Domini) を示す |
| AllStyles |
古い.
"January" や "Jan" など、すべてのスタイルの名前を示す |
| Am |
午前 0 時から正午直前までの 1 日の期間を示す |
| AmPm |
古い.
|
| April |
グレゴリオ暦とユリウス暦の年の 4 か月目を示す |
| August |
グレゴリオ暦とユリウス暦の年の 8 か月目を示す |
| Bc |
BCE とも呼ばれる、共通の時代 (キリストの前) の前の期間を示す |
| Date |
古い.
月の日を示す |
| DayOfMonth |
古い.
月の日を示す |
| DayOfWeek |
古い.
曜日を示す |
| DayOfWeekInMonth |
古い.
|
| DayOfYear |
古い.
|
| December |
グレゴリオ暦とユリウス暦の年の 12 か月目を示す |
| DstOffset |
古い.
夏時間オフセットをミリ秒単位で示す |
| Era |
古い.
年号を示す |
| February |
グレゴリオ暦とユリウス暦の年の 2 か月目を示す |
| FieldCount |
|
| Friday |
金曜日を示す |
| Hour |
古い.
午前または午後の時間を示す |
| HourOfDay |
古い.
|
| January |
グレゴリオ暦とユリウス暦の年の最初の月を示す |
| July |
グレゴリオ暦とユリウス暦の年の 7 か月目を示す |
| June |
グレゴリオ暦とユリウス暦の年の 6 か月目を示す |
| Long |
古い.
|
| LongFormat |
形式に使用される長い名前を示す |
| LongStandalone |
カレンダー ヘッダーとして月名など、個別に使用される長い名前を示す |
| March |
グレゴリオ暦とユリウス暦の年の 3 か月目を示す |
| May |
グレゴリオ暦とユリウス暦の年の 5 か月目を示す |
| Millisecond |
古い.
|
| Minute |
古い.
|
| Monday |
月曜日を示す |
| Month |
古い.
月を示す |
| NarrowFormat |
書式に使用される狭い名前を示す |
| NarrowStandalone |
狭い名前を個別に示す |
| November |
グレゴリオ暦とユリウス暦の年の 11 か月目を示す |
| October |
グレゴリオ暦とユリウス暦の年の 10 月を示す |
| Pm |
正午から午前 0 時直前までの 1 日の期間を示す |
| Saturday |
土曜日を示す |
| Second |
古い.
1 分以内の 2 番目を示す |
| September |
グレゴリオ暦とユリウス暦の年の 9 か月目を示す |
| Short |
古い.
|
| ShortFormat |
書式に使用される短い名前を示す |
| ShortStandalone |
カレンダー ヘッダーとして月の省略形など、個別に使用される短い名前を示す |
| Sunday |
日曜日を示す |
| Thursday |
木曜日を示す |
| Tuesday |
火曜日を示す |
| Undecimber |
年の 13 か月目を示す |
| Wednesday |
水曜日を示す |
| WeekOfMonth |
古い.
|
| WeekOfYear |
古い.
|
| Year |
古い.
年を示す |
| ZoneOffset |
古い.
GMT からの生オフセットをミリ秒単位で示す |
プロパティ
| 名前 | 説明 |
|---|---|
| AreFieldsSet |
true |
| CalendarType |
この |
| Class |
この |
| Fields |
この予定表の現在設定されている時刻の予定表フィールドの値。 (継承元 Calendar) |
| FirstDayOfWeek |
週の最初の日を取得します。e. (継承元 Calendar) |
| GregorianChange |
グレゴリオ暦の変更日を取得します。 または、 |
| Handle |
基になる Android インスタンスへのハンドル。 (継承元 Object) |
| IsTimeSet |
true の場合、 |
| IsWeekDateSupported |
この |
| JniIdentityHashCode |
相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。 (継承元 Object) |
| JniManagedPeerState |
|
| JniPeerMembers |
|
| Lenient |
日付/時刻の解釈を緩めるかどうかを示します。 (継承元 Calendar) |
| MinimalDaysInFirstWeek |
年の最初の週に必要な最小日数を取得します。e. (継承元 Calendar) |
| PeerReference |
このJava ピアの JNI オブジェクト参照を取得します。 (継承元 Object) |
| ThresholdClass |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 |
| ThresholdType |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 |
| Time |
この |
| TimeInMillis |
このカレンダーの時間値をミリ秒単位で返します。 (継承元 Calendar) |
| TimeZone |
タイム ゾーンを取得します。 または、指定されたタイム ゾーン値を使用してタイム ゾーンを設定します。 (継承元 Calendar) |
| WeeksInWeekYear |
この |
| WeekYear |
この |
メソッド
| 名前 | 説明 |
|---|---|
| Add(CalendarField, Int32) |
予定表のルールに基づいて、指定した (署名済みの) 時間を指定された予定表フィールドに追加します。 |
| After(Object) |
この |
| Before(Object) |
この |
| Clear() |
この>のカレンダー フィールドのすべての値と時間値 ("#Epoch" |
| Clear(CalendarField) |
指定されたカレンダー フィールドの値と、この>の時間値 ("#Epoch" |
| Clone() |
このオブジェクトのコピーを作成して返します。 (継承元 Calendar) |
| CompareTo(Calendar) |
2 つの> オブジェクトで表される時間値 ("#Epoch" |
| Complete() |
予定表フィールドの未設定のフィールドに入力します。 (継承元 Calendar) |
| ComputeFields() |
時間値 (エポックからのミリ秒オフセット) をカレンダー フィールドの値に変換します。 |
| ComputeTime() |
カレンダー フィールドの値を時間値 (エポックからのミリ秒オフセット) に変換します。 |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
|
| Dispose() |
このJava ピアによって保持されているリソースを解放します。 (継承元 Object) |
| Dispose(Boolean) |
このJava ピアによって保持されているリソースを解放します。 (継承元 Object) |
| DisposeUnlessReferenced() |
|
| Equals(Object) |
|
| Equals(Object) |
他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。 (継承元 Object) |
| From(ZonedDateTime) |
|
| Get(CalendarField) |
指定されたカレンダー フィールドの値を返します。 (継承元 Calendar) |
| GetActualMaximum(CalendarField) |
この |
| GetActualMinimum(CalendarField) |
この |
| GetDisplayName(Int32, Int32, Locale) |
指定した |
| GetDisplayNames(Int32, Int32, Locale) |
指定した |
| GetGreatestMinimum(CalendarField) |
この |
| GetHashCode() |
オブジェクトのハッシュ コード値を返します。 (継承元 Object) |
| GetLeastMaximum(CalendarField) |
この |
| GetMaximum(CalendarField) |
この |
| GetMinimum(CalendarField) |
この |
| InternalGet(Int32) |
指定されたカレンダー フィールドの値を返します。 (継承元 Calendar) |
| IsLeapYear(Int32) |
指定された年が閏年かどうかを判断します。 |
| IsSet(CalendarField) |
|
| JavaFinalize() |
オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。 (継承元 Object) |
| Notify() |
このオブジェクトのモニターで待機している 1 つのスレッドを起動します。 (継承元 Object) |
| NotifyAll() |
このオブジェクトのモニターで待機しているすべてのスレッドを起動します。 (継承元 Object) |
| Roll(CalendarField, Boolean) |
大きなフィールドを変更せずに、指定された時刻フィールドに対して 1 つの時間単位を加算または減算 (上/下) します。 |
| Roll(CalendarField, Int32) |
大きなフィールドを変更せずに、指定した (符号付き) 量を指定したカレンダー フィールドに追加します。 (継承元 Calendar) |
| Set(CalendarField, Int32) |
指定されたカレンダー フィールドを指定された値に設定します。 (継承元 Calendar) |
| Set(Int32, Int32, Int32, Int32, Int32, Int32) |
フィールド |
| Set(Int32, Int32, Int32, Int32, Int32) |
予定表フィールドの |
| Set(Int32, Int32, Int32) |
予定表フィールドの |
| SetHandle(IntPtr, JniHandleOwnership) |
Handle プロパティを設定します。 (継承元 Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
|
| SetWeekDate(Int32, Int32, Int32) |
この |
| ToArray<T>() |
このJava配列ラッパーからマネージド配列を作成します。 (継承元 Object) |
| ToInstant() |
|
| ToString() |
オブジェクトの文字列形式を返します。 (継承元 Object) |
| ToZonedDateTime() |
このオブジェクトを、この |
| UnregisterFromRuntime() |
相互運用ランタイムからこのJava ピアの登録を解除します。 (継承元 Object) |
| Wait() |
現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。 (継承元 Object) |
| Wait(Int64, Int32) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
| Wait(Int64) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
明示的なインターフェイスの実装
| 名前 | 説明 |
|---|---|
| IComparable.CompareTo(Object) |
|
| IJavaPeerable.Disposed() |
|
| IJavaPeerable.Finalized() |
|
| IJavaPeerable.JniObjectReferenceControlBlock |
|
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
|
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
|
| IJavaPeerable.SetPeerReference(JniObjectReference) |
|
| IJavaPeerable.UnregisterFromRuntime() |
|
拡張メソッド
| 名前 | 説明 |
|---|---|
| GetJniTypeName(IJavaPeerable) |
インスタンス |
| JavaAs<TResult>(IJavaPeerable) |
|
| JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
| JavaCast<TResult>(IJavaObject) |
|
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
|