HijriCalendar.IsLeapDay(Int32, Int32, Int32, Int32) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Bestimmt, ob das angegebene Datum ein Schalttag ist.
public:
override bool IsLeapDay(int year, int month, int day, int era);
public override bool IsLeapDay (int year, int month, int day, int era);
override this.IsLeapDay : int * int * int * int -> bool
Public Overrides Function IsLeapDay (year As Integer, month As Integer, day As Integer, era As Integer) As Boolean
Parameter
- year
- Int32
Eine ganze Zahl, die das Jahr darstellt.
- month
- Int32
Eine ganze Zahl zwischen 1 und 12, die den Monat darstellt.
- day
- Int32
Eine ganze Zahl zwischen 1 und 30, die den Tag darstellt.
- era
- Int32
Eine ganze Zahl, die den Zeitraum darstellt.
Gibt zurück
true
, wenn der angegebene Tag ein Schalttag ist, andernfalls false
.
Ausnahmen
era
liegt außerhalb des Bereichs, der von diesem Kalender unterstützt wird.
- oder -
year
liegt außerhalb des Bereichs, der von diesem Kalender unterstützt wird.
- oder -
month
liegt außerhalb des Bereichs, der von diesem Kalender unterstützt wird.
- oder -
day
liegt außerhalb des Bereichs, der von diesem Kalender unterstützt wird.
Beispiele
Im folgenden Codebeispiel wird die IsLeapDay
-Methode für den letzten Tag des zweiten Monats (Februar) für fünf Jahre in jedem der Epochen aufgerufen.
using namespace System;
using namespace System::Globalization;
int main()
{
// Creates and initializes a HijriCalendar.
HijriCalendar^ myCal = gcnew HijriCalendar;
// Creates a holder for the last day of the second month (February).
int iLastDay;
// Displays the header.
Console::Write( "YEAR\t" );
for ( int y = 1421; y <= 1425; y++ )
Console::Write( "\t {0}", y );
Console::WriteLine();
// Checks five years in the current era.
Console::Write( "CurrentEra:" );
for ( int y = 1421; y <= 1425; y++ )
{
iLastDay = myCal->GetDaysInMonth( y, 2, HijriCalendar::CurrentEra );
Console::Write( "\t {0}", myCal->IsLeapDay( y, 2, iLastDay, HijriCalendar::CurrentEra ) );
}
Console::WriteLine();
// Checks five years in each of the eras.
for ( int i = 0; i < myCal->Eras->Length; i++ )
{
Console::Write( "Era {0}:\t", myCal->Eras[ i ] );
for ( int y = 1421; y <= 1425; y++ )
{
iLastDay = myCal->GetDaysInMonth( y, 2, myCal->Eras[ i ] );
Console::Write( "\t {0}", myCal->IsLeapDay( y, 2, iLastDay, myCal->Eras[ i ] ) );
}
Console::WriteLine();
}
}
/*
This code produces the following output.
YEAR 1421 1422 1423 1424 1425
CurrentEra: False False False False False
Era 1: False False False False False
*/
using System;
using System.Globalization;
public class SamplesHijriCalendar {
public static void Main() {
// Creates and initializes a HijriCalendar.
HijriCalendar myCal = new HijriCalendar();
// Creates a holder for the last day of the second month (February).
int iLastDay;
// Displays the header.
Console.Write( "YEAR\t" );
for ( int y = 1421; y <= 1425; y++ )
Console.Write( "\t{0}", y );
Console.WriteLine();
// Checks five years in the current era.
Console.Write( "CurrentEra:" );
for ( int y = 1421; y <= 1425; y++ ) {
iLastDay = myCal.GetDaysInMonth( y, 2, HijriCalendar.CurrentEra );
Console.Write( "\t{0}", myCal.IsLeapDay( y, 2, iLastDay, HijriCalendar.CurrentEra ) );
}
Console.WriteLine();
// Checks five years in each of the eras.
for ( int i = 0; i < myCal.Eras.Length; i++ ) {
Console.Write( "Era {0}:\t", myCal.Eras[i] );
for ( int y = 1421; y <= 1425; y++ ) {
iLastDay = myCal.GetDaysInMonth( y, 2, myCal.Eras[i] );
Console.Write( "\t{0}", myCal.IsLeapDay( y, 2, iLastDay, myCal.Eras[i] ) );
}
Console.WriteLine();
}
}
}
/*
This code produces the following output.
YEAR 1421 1422 1423 1424 1425
CurrentEra: False False False False False
Era 1: False False False False False
*/
Imports System.Globalization
Public Class SamplesHijriCalendar
Public Shared Sub Main()
' Creates and initializes a HijriCalendar.
Dim myCal As New HijriCalendar()
' Creates a holder for the last day of the second month (February).
Dim iLastDay As Integer
' Displays the header.
Console.Write("YEAR" + ControlChars.Tab)
Dim y As Integer
For y = 1421 To 1425
Console.Write(ControlChars.Tab + "{0}", y)
Next y
Console.WriteLine()
' Checks five years in the current era.
Console.Write("CurrentEra:")
For y = 1421 To 1425
iLastDay = myCal.GetDaysInMonth(y, 2, HijriCalendar.CurrentEra)
Console.Write(ControlChars.Tab + "{0}", myCal.IsLeapDay(y, 2, iLastDay, HijriCalendar.CurrentEra))
Next y
Console.WriteLine()
' Checks five years in each of the eras.
Dim i As Integer
For i = 0 To myCal.Eras.Length - 1
Console.Write("Era {0}:" + ControlChars.Tab, myCal.Eras(i))
For y = 1421 To 1425
iLastDay = myCal.GetDaysInMonth(y, 2, myCal.Eras(i))
Console.Write(ControlChars.Tab + "{0}", myCal.IsLeapDay(y, 2, iLastDay, myCal.Eras(i)))
Next y
Console.WriteLine()
Next i
End Sub
End Class
'This code produces the following output.
'
'YEAR 1421 1422 1423 1424 1425
'CurrentEra: False False False False False
'Era 1: False False False False False
Hinweise
In jedem 30-Jahres-Zyklus, der mit einem Jahr endet, das durch 30 gleichmäßig teilbar ist, sind das 2., 5., 7., 10., 13., 16., 18., 21., 24., 26. und 29. Jahr Schaltjahre. Ein gemeinsames Jahr hat 354 Tage und ein Schaltjahr 355 Tage.
Ein Schalttag ist ein Tag, der nur in einem Schaltjahr auftritt. Im Hijri-Kalender ist der 30. Tag von Zulhijjah der einzige Schalttag.