Calendar.IsLeapMonth Calendar.IsLeapMonth Calendar.IsLeapMonth Calendar.IsLeapMonth Method

Definición

Cuando se invalida en una clase derivada, determina si un mes es bisiesto.When overridden in a derived class, determines whether a month is a leap month.

Sobrecargas

IsLeapMonth(Int32, Int32, Int32) IsLeapMonth(Int32, Int32, Int32) IsLeapMonth(Int32, Int32, Int32) IsLeapMonth(Int32, Int32, Int32)

Cuando se invalida en una clase derivada, determina si el mes especificado del año especificado de la era especificada es un mes bisiesto.When overridden in a derived class, determines whether the specified month in the specified year in the specified era is a leap month.

IsLeapMonth(Int32, Int32) IsLeapMonth(Int32, Int32) IsLeapMonth(Int32, Int32) IsLeapMonth(Int32, Int32)

Determina si el mes especificado del año especificado de la era actual es un mes bisiesto.Determines whether the specified month in the specified year in the current era is a leap month.

IsLeapMonth(Int32, Int32, Int32) IsLeapMonth(Int32, Int32, Int32) IsLeapMonth(Int32, Int32, Int32) IsLeapMonth(Int32, Int32, Int32)

Cuando se invalida en una clase derivada, determina si el mes especificado del año especificado de la era especificada es un mes bisiesto.When overridden in a derived class, determines whether the specified month in the specified year in the specified era is a leap month.

public:
 abstract bool IsLeapMonth(int year, int month, int era);
public abstract bool IsLeapMonth (int year, int month, int era);
abstract member IsLeapMonth : int * int * int -> bool
Public MustOverride Function IsLeapMonth (year As Integer, month As Integer, era As Integer) As Boolean

Parámetros

year
Int32 Int32 Int32 Int32

Entero que representa el año.An integer that represents the year.

month
Int32 Int32 Int32 Int32

Un entero positivo que representa el mes.A positive integer that represents the month.

era
Int32 Int32 Int32 Int32

Entero que representa la era.An integer that represents the era.

Devoluciones

true si el mes especificado es un mes bisiesto; en caso contrario, false.true if the specified month is a leap month; otherwise, false.

Excepciones

year está fuera del intervalo que admite el calendario.year is outside the range supported by the calendar.

O bien-or- month está fuera del intervalo que admite el calendario.month is outside the range supported by the calendar.

O bien-or- era está fuera del intervalo que admite el calendario.era is outside the range supported by the calendar.

Comentarios

Para compensar la diferencia entre el año natural y el tiempo real que la Tierra gira alrededor del sol o en tiempo real que la luna gira en torno a la tierra, un año bisiesto tiene un número diferente de días de un año de calendario estándar.To make up for the difference between the calendar year and the actual time that the earth rotates around the sun or the actual time that the moon rotates around the earth, a leap year has a different number of days from a standard calendar year. Cada Calendar implementación define los años bisiestos de manera diferente.Each Calendar implementation defines leap years differently.

Un mes bisiesto es todo un mes que se produce solo en un año bisiesto.A leap month is an entire month that occurs only in a leap year. Por ejemplo, en el calendario hebreo, Adar bet es el único mes bisiesto.For example, in the Hebrew calendar, Adar Beit is the only leap month.

Notas a los desarrolladores de herederos

La clase derivada debe admitir CurrentEra cuando se pasa como el era parámetro.The derived class must support CurrentEra when it is passed as the era parameter. Una manera de admitir CurrentEra está reemplazando el valor almacenado en Eras [0], que es el valor de la era actual del calendario.One way to support CurrentEra is by replacing it with the value stored in Eras[0], which is the value for the current era of the calendar.

Consulte también:

IsLeapMonth(Int32, Int32) IsLeapMonth(Int32, Int32) IsLeapMonth(Int32, Int32) IsLeapMonth(Int32, Int32)

Determina si el mes especificado del año especificado de la era actual es un mes bisiesto.Determines whether the specified month in the specified year in the current era is a leap month.

public:
 virtual bool IsLeapMonth(int year, int month);
public virtual bool IsLeapMonth (int year, int month);
abstract member IsLeapMonth : int * int -> bool
override this.IsLeapMonth : int * int -> bool
Public Overridable Function IsLeapMonth (year As Integer, month As Integer) As Boolean

Parámetros

year
Int32 Int32 Int32 Int32

Entero que representa el año.An integer that represents the year.

month
Int32 Int32 Int32 Int32

Un entero positivo que representa el mes.A positive integer that represents the month.

Devoluciones

true si el mes especificado es un mes bisiesto; en caso contrario, false.true if the specified month is a leap month; otherwise, false.

Excepciones

year está fuera del intervalo que admite el calendario.year is outside the range supported by the calendar.

O bien-or- month está fuera del intervalo que admite el calendario.month is outside the range supported by the calendar.

Ejemplos

En el ejemplo de código siguiente se compara diferentes implementaciones de la Calendar clase.The following code example compares different implementations of the Calendar class.

using namespace System;
using namespace System::Globalization;
int main()
{
   
   // Creates an instance of every Calendar type.
   array<Calendar^>^myCals = gcnew array<Calendar^>(8);
   myCals[ 0 ] = gcnew GregorianCalendar;
   myCals[ 1 ] = gcnew HebrewCalendar;
   myCals[ 2 ] = gcnew HijriCalendar;
   myCals[ 3 ] = gcnew JapaneseCalendar;
   myCals[ 4 ] = gcnew JulianCalendar;
   myCals[ 5 ] = gcnew KoreanCalendar;
   myCals[ 6 ] = gcnew TaiwanCalendar;
   myCals[ 7 ] = gcnew ThaiBuddhistCalendar;

   // For each calendar, displays the current year, the number of months in that year,
   // and the number of days in each month of that year.
      int i;
   int j;
   int iYear;
   int iMonth;
   int iDay;
   DateTime myDT = DateTime::Today;
   for ( i = 0; i < myCals->Length; i++ )
   {
      iYear = myCals[ i ]->GetYear( myDT );
      Console::WriteLine();
      Console::WriteLine( " {0}, Year: {1}", myCals[ i ]->GetType(), myCals[ i ]->GetYear( myDT ) );
      Console::WriteLine( "   MonthsInYear: {0}", myCals[ i ]->GetMonthsInYear( iYear ) );
      Console::WriteLine( "   DaysInYear: {0}", myCals[ i ]->GetDaysInYear( iYear ) );
      Console::WriteLine( "   Days in each month:" );
      Console::Write( "      " );
      for ( j = 1; j <= myCals[ i ]->GetMonthsInYear( iYear ); j++ )
         Console::Write( " {0, -5}", myCals[ i ]->GetDaysInMonth( iYear, j ) );
      Console::WriteLine();
      iMonth = myCals[ i ]->GetMonth( myDT );
      iDay = myCals[ i ]->GetDayOfMonth( myDT );
      Console::WriteLine( "   IsLeapDay: {0}", myCals[ i ]->IsLeapDay( iYear, iMonth, iDay ) );
      Console::WriteLine( "   IsLeapMonth: {0}", myCals[ i ]->IsLeapMonth( iYear, iMonth ) );
      Console::WriteLine( "   IsLeapYear: {0}", myCals[ i ]->IsLeapYear( iYear ) );

   }
}

/*
This code produces the following output.  The results vary depending on the date.

System::Globalization::GregorianCalendar, Year: 2002
MonthsInYear: 12
DaysInYear: 365
Days in each month:
31    28    31    30    31    30    31    31    30    31    30    31
IsLeapDay:   False
IsLeapMonth: False
IsLeapYear:  False

System::Globalization::HebrewCalendar, Year: 5763
MonthsInYear: 13
DaysInYear: 385
Days in each month:
30    30    30    29    30    30    29    30    29    30    29    30    29
IsLeapDay:   False
IsLeapMonth: False
IsLeapYear:  True

System::Globalization::HijriCalendar, Year: 1423
MonthsInYear: 12
DaysInYear: 355
Days in each month:
30    29    30    29    30    29    30    29    30    29    30    30
IsLeapDay:   False
IsLeapMonth: False
IsLeapYear:  True

System::Globalization::JapaneseCalendar, Year: 14
MonthsInYear: 12
DaysInYear: 365
Days in each month:
31    28    31    30    31    30    31    31    30    31    30    31
IsLeapDay:   False
IsLeapMonth: False
IsLeapYear:  False

System::Globalization::JulianCalendar, Year: 2002
MonthsInYear: 12
DaysInYear: 365
Days in each month:
31    28    31    30    31    30    31    31    30    31    30    31
IsLeapDay:   False
IsLeapMonth: False
IsLeapYear:  False

System::Globalization::KoreanCalendar, Year: 4335
MonthsInYear: 12
DaysInYear: 365
Days in each month:
31    28    31    30    31    30    31    31    30    31    30    31
IsLeapDay:   False
IsLeapMonth: False
IsLeapYear:  False

System::Globalization::TaiwanCalendar, Year: 91
MonthsInYear: 12
DaysInYear: 365
Days in each month:
31    28    31    30    31    30    31    31    30    31    30    31
IsLeapDay:   False
IsLeapMonth: False
IsLeapYear:  False

System::Globalization::ThaiBuddhistCalendar, Year: 2545
MonthsInYear: 12
DaysInYear: 365
Days in each month:
31    28    31    30    31    30    31    31    30    31    30    31
IsLeapDay:   False
IsLeapMonth: False
IsLeapYear:  False

*/
using System;
using System.Globalization;


public class SamplesCalendar  {

   public static void Main()  {

      // Creates an instance of every Calendar type.
      Calendar[] myCals = new Calendar[8];
      myCals[0] = new GregorianCalendar();
      myCals[1] = new HebrewCalendar();
      myCals[2] = new HijriCalendar();
      myCals[3] = new JapaneseCalendar();
      myCals[4] = new JulianCalendar();
      myCals[5] = new KoreanCalendar();
      myCals[6] = new TaiwanCalendar();
      myCals[7] = new ThaiBuddhistCalendar();

      // For each calendar, displays the current year, the number of months in that year,
      // and the number of days in each month of that year.
      int i, j, iYear, iMonth, iDay;
      DateTime myDT = DateTime.Today;

      for ( i = 0; i < myCals.Length; i++ )  {
         iYear = myCals[i].GetYear( myDT );
         Console.WriteLine();
         Console.WriteLine( "{0}, Year: {1}", myCals[i].GetType(), myCals[i].GetYear( myDT ) );
         Console.WriteLine( "   MonthsInYear: {0}", myCals[i].GetMonthsInYear( iYear ) );
         Console.WriteLine( "   DaysInYear: {0}", myCals[i].GetDaysInYear( iYear ) );
         Console.WriteLine( "   Days in each month:" );
         Console.Write( "      " );

         for ( j = 1; j <= myCals[i].GetMonthsInYear( iYear ); j++ )
            Console.Write( " {0,-5}", myCals[i].GetDaysInMonth( iYear, j ) );
         Console.WriteLine();

         iMonth = myCals[i].GetMonth( myDT );
         iDay = myCals[i].GetDayOfMonth( myDT );
         Console.WriteLine( "   IsLeapDay:   {0}", myCals[i].IsLeapDay( iYear, iMonth, iDay ) );
         Console.WriteLine( "   IsLeapMonth: {0}", myCals[i].IsLeapMonth( iYear, iMonth ) );
         Console.WriteLine( "   IsLeapYear:  {0}", myCals[i].IsLeapYear( iYear ) );

      }

   }

}


/*
This code produces the following output.  The results vary depending on the date.

System.Globalization.GregorianCalendar, Year: 2002
   MonthsInYear: 12
   DaysInYear: 365
   Days in each month:
       31    28    31    30    31    30    31    31    30    31    30    31   
   IsLeapDay:   False
   IsLeapMonth: False
   IsLeapYear:  False

System.Globalization.HebrewCalendar, Year: 5763
   MonthsInYear: 13
   DaysInYear: 385
   Days in each month:
       30    30    30    29    30    30    29    30    29    30    29    30    29   
   IsLeapDay:   False
   IsLeapMonth: False
   IsLeapYear:  True

System.Globalization.HijriCalendar, Year: 1423
   MonthsInYear: 12
   DaysInYear: 355
   Days in each month:
       30    29    30    29    30    29    30    29    30    29    30    30   
   IsLeapDay:   False
   IsLeapMonth: False
   IsLeapYear:  True

System.Globalization.JapaneseCalendar, Year: 14
   MonthsInYear: 12
   DaysInYear: 365
   Days in each month:
       31    28    31    30    31    30    31    31    30    31    30    31   
   IsLeapDay:   False
   IsLeapMonth: False
   IsLeapYear:  False

System.Globalization.JulianCalendar, Year: 2002
   MonthsInYear: 12
   DaysInYear: 365
   Days in each month:
       31    28    31    30    31    30    31    31    30    31    30    31   
   IsLeapDay:   False
   IsLeapMonth: False
   IsLeapYear:  False

System.Globalization.KoreanCalendar, Year: 4335
   MonthsInYear: 12
   DaysInYear: 365
   Days in each month:
       31    28    31    30    31    30    31    31    30    31    30    31   
   IsLeapDay:   False
   IsLeapMonth: False
   IsLeapYear:  False

System.Globalization.TaiwanCalendar, Year: 91
   MonthsInYear: 12
   DaysInYear: 365
   Days in each month:
       31    28    31    30    31    30    31    31    30    31    30    31   
   IsLeapDay:   False
   IsLeapMonth: False
   IsLeapYear:  False

System.Globalization.ThaiBuddhistCalendar, Year: 2545
   MonthsInYear: 12
   DaysInYear: 365
   Days in each month:
       31    28    31    30    31    30    31    31    30    31    30    31   
   IsLeapDay:   False
   IsLeapMonth: False
   IsLeapYear:  False

*/
Imports System
Imports System.Globalization


Public Class SamplesCalendar   

   Public Shared Sub Main()

      ' Creates an instance of every Calendar type.
      Dim myCals(7) As Calendar
      myCals(0) = New GregorianCalendar()
      myCals(1) = New HebrewCalendar()
      myCals(2) = New HijriCalendar()
      myCals(3) = New JapaneseCalendar()
      myCals(4) = New JulianCalendar()
      myCals(5) = New KoreanCalendar()
      myCals(6) = New TaiwanCalendar()
      myCals(7) = New ThaiBuddhistCalendar()

      ' For each calendar, displays the current year, the number of months in that year,
      ' and the number of days in each month of that year.
      Dim i, j, iYear, iMonth, iDay As Integer
      Dim myDT As DateTime = DateTime.Today

      For i = 0 To myCals.Length - 1
         iYear = myCals(i).GetYear(myDT)
         Console.WriteLine()
         Console.WriteLine("{0}, Year: {1}", myCals(i).GetType(), myCals(i).GetYear(myDT))
         Console.WriteLine("   MonthsInYear: {0}", myCals(i).GetMonthsInYear(iYear))
         Console.WriteLine("   DaysInYear: {0}", myCals(i).GetDaysInYear(iYear))
         Console.WriteLine("   Days in each month:")
         Console.Write("      ")
         
         For j = 1 To myCals(i).GetMonthsInYear(iYear)
            Console.Write(" {0,-5}", myCals(i).GetDaysInMonth(iYear, j))
         Next j
         Console.WriteLine()
         
         iMonth = myCals(i).GetMonth(myDT)
         iDay = myCals(i).GetDayOfMonth(myDT)
         Console.WriteLine("   IsLeapDay:   {0}", myCals(i).IsLeapDay(iYear, iMonth, iDay))
         Console.WriteLine("   IsLeapMonth: {0}", myCals(i).IsLeapMonth(iYear, iMonth))
         Console.WriteLine("   IsLeapYear:  {0}", myCals(i).IsLeapYear(iYear))
      Next i 

   End Sub 'Main

End Class 'SamplesCalendar 


'This code produces the following output.  The results vary depending on the date.

'

'System.Globalization.GregorianCalendar, Year: 2002

'   MonthsInYear: 12

'   DaysInYear: 365

'   Days in each month:

'       31    28    31    30    31    30    31    31    30    31    30    31   

'   IsLeapDay:   False

'   IsLeapMonth: False

'   IsLeapYear:  False

'

'System.Globalization.HebrewCalendar, Year: 5763

'   MonthsInYear: 13

'   DaysInYear: 385

'   Days in each month:

'       30    30    30    29    30    30    29    30    29    30    29    30    29   

'   IsLeapDay:   False

'   IsLeapMonth: False

'   IsLeapYear:  True

'

'System.Globalization.HijriCalendar, Year: 1423

'   MonthsInYear: 12

'   DaysInYear: 355

'   Days in each month:

'       30    29    30    29    30    29    30    29    30    29    30    30   

'   IsLeapDay:   False

'   IsLeapMonth: False

'   IsLeapYear:  True

'

'System.Globalization.JapaneseCalendar, Year: 14

'   MonthsInYear: 12

'   DaysInYear: 365

'   Days in each month:

'       31    28    31    30    31    30    31    31    30    31    30    31   

'   IsLeapDay:   False

'   IsLeapMonth: False

'   IsLeapYear:  False

'

'System.Globalization.JulianCalendar, Year: 2002

'   MonthsInYear: 12

'   DaysInYear: 365

'   Days in each month:

'       31    28    31    30    31    30    31    31    30    31    30    31   

'   IsLeapDay:   False

'   IsLeapMonth: False

'   IsLeapYear:  False

'

'System.Globalization.KoreanCalendar, Year: 4335

'   MonthsInYear: 12

'   DaysInYear: 365

'   Days in each month:

'       31    28    31    30    31    30    31    31    30    31    30    31   

'   IsLeapDay:   False

'   IsLeapMonth: False

'   IsLeapYear:  False

'

'System.Globalization.TaiwanCalendar, Year: 91

'   MonthsInYear: 12

'   DaysInYear: 365

'   Days in each month:

'       31    28    31    30    31    30    31    31    30    31    30    31   

'   IsLeapDay:   False

'   IsLeapMonth: False

'   IsLeapYear:  False

'

'System.Globalization.ThaiBuddhistCalendar, Year: 2545

'   MonthsInYear: 12

'   DaysInYear: 365

'   Days in each month:

'       31    28    31    30    31    30    31    31    30    31    30    31   

'   IsLeapDay:   False

'   IsLeapMonth: False

'   IsLeapYear:  False

Comentarios

Para compensar la diferencia entre el año natural y el tiempo real que la Tierra gira alrededor del sol o en tiempo real que la luna gira en torno a la tierra, un año bisiesto tiene un número diferente de días de un año de calendario estándar.To make up for the difference between the calendar year and the actual time that the earth rotates around the sun or the actual time that the moon rotates around the earth, a leap year has a different number of days from a standard calendar year. Cada Calendar implementación define los años bisiestos de manera diferente.Each Calendar implementation defines leap years differently.

Un mes bisiesto es todo un mes que se produce solo en un año bisiesto.A leap month is an entire month that occurs only in a leap year. Por ejemplo, en el calendario hebreo, Adar bet es el único mes bisiesto.For example, in the Hebrew calendar, Adar Beit is the only leap month.

Consulte también:

Se aplica a