แก้ไข

แชร์ผ่าน


KoreanCalendar.IsLeapMonth(Int32, Int32, Int32) Method

Definition

Determines whether the specified month in the specified year in the specified era is a leap month.

public:
 override bool IsLeapMonth(int year, int month, int era);
public override bool IsLeapMonth (int year, int month, int era);
override this.IsLeapMonth : int * int * int -> bool
Public Overrides Function IsLeapMonth (year As Integer, month As Integer, era As Integer) As Boolean

Parameters

year
Int32

An integer that represents the year.

month
Int32

An integer from 1 to 12 that represents the month.

era
Int32

An integer that represents the era.

Returns

This method always returns false, unless overridden by a derived class.

Exceptions

year is outside the range supported by the calendar.

-or-

month is outside the range supported by the calendar.

-or-

era is outside the range supported by the calendar.

Examples

The following example calls IsLeapMonth for all the months in five years in the current era.

using namespace System;
using namespace System::Globalization;
int main()
{
   
   // Creates and initializes a KoreanCalendar.
   KoreanCalendar^ myCal = gcnew KoreanCalendar;
   
   // Checks all the months in five years in the current era.
   int iMonthsInYear;
   for ( int y = 4334; y <= 4338; y++ )
   {
      Console::Write( " {0}:\t", y );
      iMonthsInYear = myCal->GetMonthsInYear( y, KoreanCalendar::CurrentEra );
      for ( int m = 1; m <= iMonthsInYear; m++ )
         Console::Write( "\t {0}", myCal->IsLeapMonth( y, m, KoreanCalendar::CurrentEra ) );
      Console::WriteLine();

   }
}

/*
This code produces the following output.

4334:           False   False   False   False   False   False   False   False   False   False   False   False
4335:           False   False   False   False   False   False   False   False   False   False   False   False
4336:           False   False   False   False   False   False   False   False   False   False   False   False
4337:           False   False   False   False   False   False   False   False   False   False   False   False
4338:           False   False   False   False   False   False   False   False   False   False   False   False

*/
using System;
using System.Globalization;

public class SamplesKoreanCalendar  {

   public static void Main()  {

      // Creates and initializes a KoreanCalendar.
      KoreanCalendar myCal = new KoreanCalendar();

      // Checks all the months in five years in the current era.
      int iMonthsInYear;
      for ( int y = 4334; y <= 4338; y++ )  {
         Console.Write( "{0}:\t", y );
         iMonthsInYear = myCal.GetMonthsInYear( y, KoreanCalendar.CurrentEra );
         for ( int m = 1; m <= iMonthsInYear; m++ )
            Console.Write( "\t{0}", myCal.IsLeapMonth( y, m, KoreanCalendar.CurrentEra ) );
         Console.WriteLine();
      }
   }
}

/*
This code produces the following output.

4334:           False   False   False   False   False   False   False   False   False   False   False   False
4335:           False   False   False   False   False   False   False   False   False   False   False   False
4336:           False   False   False   False   False   False   False   False   False   False   False   False
4337:           False   False   False   False   False   False   False   False   False   False   False   False
4338:           False   False   False   False   False   False   False   False   False   False   False   False

*/
Imports System.Globalization

Public Class SamplesKoreanCalendar   
   
   Public Shared Sub Main()

      ' Creates and initializes a KoreanCalendar.
      Dim myCal As New KoreanCalendar()

      ' Checks all the months in five years in the current era.
      Dim iMonthsInYear As Integer
      Dim y As Integer
      For y = 4334 To 4338
         Console.Write("{0}:" + ControlChars.Tab, y)
         iMonthsInYear = myCal.GetMonthsInYear(y, KoreanCalendar.CurrentEra)
         Dim m As Integer
         For m = 1 To iMonthsInYear
            Console.Write(ControlChars.Tab + "{0}", myCal.IsLeapMonth(y, m, KoreanCalendar.CurrentEra))
         Next m
         Console.WriteLine()
      Next y

   End Sub

End Class


'This code produces the following output.
'
'4334:           False   False   False   False   False   False   False   False   False   False   False   False
'4335:           False   False   False   False   False   False   False   False   False   False   False   False
'4336:           False   False   False   False   False   False   False   False   False   False   False   False
'4337:           False   False   False   False   False   False   False   False   False   False   False   False
'4338:           False   False   False   False   False   False   False   False   False   False   False   False

Remarks

Leap years in the Korean calendar correspond to the same leap years in the Gregorian calendar. 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. However, Gregorian years that are divisible by 400 are leap years. A common year has 365 days and a leap year has 366 days.

A leap month is an entire month that occurs only in a leap year. The Korean calendar does not have any leap months.

Applies to

See also