GregorianCalendar.IsLeapDay(Int32, Int32, Int32, Int32) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
지정된 연대의 지정된 날짜가 윤일인지 여부를 확인합니다.
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
연도를 나타내는 정수입니다.
- month
- Int32
월을 나타내는 1에서 12 사이의 정수입니다.
- day
- Int32
일을 나타내는 1에서 31 사이의 정수입니다.
- era
- Int32
연대를 나타내는 정수입니다.
반환
지정된 날짜가 윤일이면 true이고, 그렇지 않으면 false입니다.
예외
era가 달력에서 지원하는 범위 밖에 있는 경우
또는
year가 달력에서 지원하는 범위 밖에 있는 경우
또는
month가 달력에서 지원하는 범위 밖에 있는 경우
또는
day가 달력에서 지원하는 범위 밖에 있는 경우
예제
다음 코드 예제에서는 각 시대의 5년 동안 두 번째 달(2월)의 마지막 날에 IsLeapDay를 호출합니다.
using namespace System;
using namespace System::Globalization;
int main()
{
// Creates and initializes a GregorianCalendar.
GregorianCalendar^ myCal = gcnew GregorianCalendar;
// Creates a holder for the last day of the second month (February).
int iLastDay;
// Displays the header.
Console::Write( "YEAR\t" );
for ( int y = 2001; y <= 2005; y++ )
Console::Write( "\t {0}", y );
Console::WriteLine();
// Checks five years in the current era.
Console::Write( "CurrentEra:" );
for ( int y = 2001; y <= 2005; y++ )
{
iLastDay = myCal->GetDaysInMonth( y, 2, GregorianCalendar::CurrentEra );
Console::Write( "\t {0}", myCal->IsLeapDay( y, 2, iLastDay, GregorianCalendar::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 = 2001; y <= 2005; 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 2001 2002 2003 2004 2005
CurrentEra: False False False True False
Era 1: False False False True False
*/
using System;
using System.Globalization;
public class SamplesGregorianCalendar {
public static void Main() {
// Creates and initializes a GregorianCalendar.
GregorianCalendar myCal = new GregorianCalendar();
// Creates a holder for the last day of the second month (February).
int iLastDay;
// Displays the header.
Console.Write( "YEAR\t" );
for ( int y = 2001; y <= 2005; y++ )
Console.Write( "\t{0}", y );
Console.WriteLine();
// Checks five years in the current era.
Console.Write( "CurrentEra:" );
for ( int y = 2001; y <= 2005; y++ ) {
iLastDay = myCal.GetDaysInMonth( y, 2, GregorianCalendar.CurrentEra );
Console.Write( "\t{0}", myCal.IsLeapDay( y, 2, iLastDay, GregorianCalendar.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 = 2001; y <= 2005; 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 2001 2002 2003 2004 2005
CurrentEra: False False False True False
Era 1: False False False True False
*/
Imports System.Globalization
Public Class SamplesGregorianCalendar
Public Shared Sub Main()
' Creates and initializes a GregorianCalendar.
Dim myCal As New GregorianCalendar()
' 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 = 2001 To 2005
Console.Write(ControlChars.Tab + "{0}", y)
Next y
Console.WriteLine()
' Checks five years in the current era.
Console.Write("CurrentEra:")
For y = 2001 To 2005
iLastDay = myCal.GetDaysInMonth(y, 2, GregorianCalendar.CurrentEra)
Console.Write(ControlChars.Tab + "{0}", myCal.IsLeapDay(y, 2, iLastDay, GregorianCalendar.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 = 2001 To 2005
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 2001 2002 2003 2004 2005
'CurrentEra: False False False True False
'Era 1: False False False True False
설명
그레고리오력의 윤년은 100으로 나눌 수 있는 경우를 제외하고 4로 균등하게 나눌 수 있는 연도로 정의됩니다. 그러나 400으로 나눌 수 있는 연도는 윤년입니다. 예를 들어 1900년은 윤년이 아니라 2000년이었습니다. 평년은 365일, 윤년은 366일입니다.
윤일은 윤년에만 발생하는 날입니다. 그레고리오력에서 2월 29일은 유일한 윤일입니다.