ThaiBuddhistCalendar.IsLeapDay(Int32, Int32, Int32, Int32) 方法
定义
确定指定纪元中的指定日期是否为闰日。Determines whether the specified date in the specified era is a leap day.
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
参数
- year
- Int32
一个整数,用于表示年份。An integer that represents the year.
- month
- Int32
1 到 12 之间的一个整数,用于表示月份。An integer from 1 to 12 that represents the month.
- day
- Int32
1 到 31 之间的一个整数,用于表示天。An integer from 1 to 31 that represents the day.
- era
- Int32
一个整数,用于表示纪元。An integer that represents the era.
返回
如果指定的日期是闰日,则为 true;否则为 false。true if the specified day is a leap day; otherwise, false.
例外
year 超出了日历支持的范围。year is outside the range supported by the calendar.
- 或 --or-
month 超出了日历支持的范围。month is outside the range supported by the calendar.
- 或 --or-
day 超出了日历支持的范围。day is outside the range supported by the calendar.
- 或 --or-
era 超出了日历支持的范围。era is outside the range supported by the calendar.
示例
下面的示例在 IsLeapDay 每个纪元的五年中,在第二个月的最后一天 (2 月) 。The following example calls IsLeapDay for the last day of the second month (February) for five years in each of the eras.
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
注解
泰国历日历中的闰年对应于公历的相同闰年。Leap years in the Thai Buddhist calendar correspond to the same leap years in the Gregorian calendar. 公历中的闰年定义为可被四整除的公历年份,但它可被100整除。A leap year in the Gregorian calendar is defined as a Gregorian year that is evenly divisible by four, except if it is divisible by 100. 但是,400可以整除的公历年是闰年。However, Gregorian years that are divisible by 400 are leap years. 一个常见年份有365天,闰年有366天。A common year has 365 days and a leap year has 366 days.
闰日是指仅在闰年发生的日期。A leap day is a day that occurs only in a leap year. 例如,2月29日是唯一的闰日。For example, the 29th day of February is the only leap day.