ThaiBuddhistCalendar.IsLeapDay(Int32, Int32, Int32, Int32) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje, zda je zadané datum v zadané éře přestupný den.
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
Parametry
- year
- Int32
Celé číslo, které představuje rok.
- month
- Int32
Celé číslo od 1 do 12, které představuje měsíc.
- day
- Int32
Celé číslo od 1 do 31, které představuje den.
- era
- Int32
Celé číslo, které představuje éru.
Návraty
true
je-li zadaný den přestupný den; v opačném případě . false
Výjimky
year
je mimo rozsah podporovaný kalendářem.
-nebo-
month
je mimo rozsah podporovaný kalendářem.
-nebo-
day
je mimo rozsah podporovaný kalendářem.
-nebo-
era
je mimo rozsah podporovaný kalendářem.
Příklady
Následující příklad volá IsLeapDay poslední den druhého měsíce (únor) po dobu pěti let v každé éře.
using namespace System;
using namespace System::Globalization;
int main()
{
// Creates and initializes a ThaiBuddhistCalendar.
ThaiBuddhistCalendar^ myCal = gcnew ThaiBuddhistCalendar;
// Creates a holder for the last day of the second month (February).
int iLastDay;
// Displays the header.
Console::Write( "YEAR\t" );
for ( int y = 2544; y <= 2548; y++ )
Console::Write( "\t {0}", y );
Console::WriteLine();
// Checks five years in the current era.
Console::Write( "CurrentEra:" );
for ( int y = 2544; y <= 2548; y++ )
{
iLastDay = myCal->GetDaysInMonth( y, 2, ThaiBuddhistCalendar::CurrentEra );
Console::Write( "\t {0}", myCal->IsLeapDay( y, 2, iLastDay, ThaiBuddhistCalendar::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 = 2544; y <= 2548; 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 2544 2545 2546 2547 2548
CurrentEra: False False False True False
Era 1: False False False True False
*/
using System;
using System.Globalization;
public class SamplesThaiBuddhistCalendar {
public static void Main() {
// Creates and initializes a ThaiBuddhistCalendar.
ThaiBuddhistCalendar myCal = new ThaiBuddhistCalendar();
// Creates a holder for the last day of the second month (February).
int iLastDay;
// Displays the header.
Console.Write( "YEAR\t" );
for ( int y = 2544; y <= 2548; y++ )
Console.Write( "\t{0}", y );
Console.WriteLine();
// Checks five years in the current era.
Console.Write( "CurrentEra:" );
for ( int y = 2544; y <= 2548; y++ ) {
iLastDay = myCal.GetDaysInMonth( y, 2, ThaiBuddhistCalendar.CurrentEra );
Console.Write( "\t{0}", myCal.IsLeapDay( y, 2, iLastDay, ThaiBuddhistCalendar.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 = 2544; y <= 2548; 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 2544 2545 2546 2547 2548
CurrentEra: False False False True False
Era 1: False False False True False
*/
Imports System.Globalization
Public Class SamplesThaiBuddhistCalendar
Public Shared Sub Main()
' Creates and initializes a ThaiBuddhistCalendar.
Dim myCal As New ThaiBuddhistCalendar()
' 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 = 2544 To 2548
Console.Write(ControlChars.Tab + "{0}", y)
Next y
Console.WriteLine()
' Checks five years in the current era.
Console.Write("CurrentEra:")
For y = 2544 To 2548
iLastDay = myCal.GetDaysInMonth(y, 2, ThaiBuddhistCalendar.CurrentEra)
Console.Write(ControlChars.Tab + "{0}", myCal.IsLeapDay(y, 2, iLastDay, ThaiBuddhistCalendar.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 = 2544 To 2548
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 2544 2545 2546 2547 2548
'CurrentEra: False False False True False
'Era 1: False False False True False
Poznámky
Přestupné roky v thajském buddhistickém kalendáři odpovídají stejným přestupným rokům v gregoriánském kalendáři. Přestupný rok v gregoriánském kalendáři je definován jako gregoriánský rok, který je rovnoměrně dělitelný čtyřmi, s výjimkou případu, kdy je dělitelný 100. Gregoriánské roky, které jsou dělitelné 400, jsou však přestupnými roky. Běžný rok má 365 dnů a přestupný rok 366 dnů.
Přestupný den je den, který nastane pouze v přestupném roce. Například 29. den února je jediný přestupný den.