HijriCalendar.IsLeapMonth(Int32, Int32, Int32) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет, является ли указанный месяц указанных года и эры високосным месяцем.
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
Параметры
- year
- Int32
Целое число, представляющее год.
- month
- Int32
Целое число от 1 до 12, обозначающее месяц.
- era
- Int32
Целое число, представляющее эру.
Возвращаемое значение
Этот метод всегда возвращает значение false
.
Исключения
era
находится за пределами диапазона, поддерживаемого этим календарем.
-или-
year
находится за пределами диапазона, поддерживаемого этим календарем.
-или-
month
находится за пределами диапазона, поддерживаемого этим календарем.
Примеры
В следующем примере кода вызывается IsLeapMonth
для всех месяцев в пяти годах текущей эпохи.
using namespace System;
using namespace System::Globalization;
int main()
{
// Creates and initializes a HijriCalendar.
HijriCalendar^ myCal = gcnew HijriCalendar;
// Checks all the months in five years in the current era.
int iMonthsInYear;
for ( int y = 1421; y <= 1425; y++ )
{
Console::Write( " {0}:\t", y );
iMonthsInYear = myCal->GetMonthsInYear( y, HijriCalendar::CurrentEra );
for ( int m = 1; m <= iMonthsInYear; m++ )
Console::Write( "\t {0}", myCal->IsLeapMonth( y, m, HijriCalendar::CurrentEra ) );
Console::WriteLine();
}
}
/*
This code produces the following output.
1421: False False False False False False False False False False False False
1422: False False False False False False False False False False False False
1423: False False False False False False False False False False False False
1424: False False False False False False False False False False False False
1425: False False False False False False False False False False False False
*/
using System;
using System.Globalization;
public class SamplesHijriCalendar {
public static void Main() {
// Creates and initializes a HijriCalendar.
HijriCalendar myCal = new HijriCalendar();
// Checks all the months in five years in the current era.
int iMonthsInYear;
for ( int y = 1421; y <= 1425; y++ ) {
Console.Write( "{0}:\t", y );
iMonthsInYear = myCal.GetMonthsInYear( y, HijriCalendar.CurrentEra );
for ( int m = 1; m <= iMonthsInYear; m++ )
Console.Write( "\t{0}", myCal.IsLeapMonth( y, m, HijriCalendar.CurrentEra ) );
Console.WriteLine();
}
}
}
/*
This code produces the following output.
1421: False False False False False False False False False False False False
1422: False False False False False False False False False False False False
1423: False False False False False False False False False False False False
1424: False False False False False False False False False False False False
1425: False False False False False False False False False False False False
*/
Imports System.Globalization
Public Class SamplesHijriCalendar
Public Shared Sub Main()
' Creates and initializes a HijriCalendar.
Dim myCal As New HijriCalendar()
' Checks all the months in five years in the current era.
Dim iMonthsInYear As Integer
Dim y As Integer
For y = 1421 To 1425
Console.Write("{0}:" + ControlChars.Tab, y)
iMonthsInYear = myCal.GetMonthsInYear(y, HijriCalendar.CurrentEra)
Dim m As Integer
For m = 1 To iMonthsInYear
Console.Write(ControlChars.Tab + "{0}", myCal.IsLeapMonth(y, m, HijriCalendar.CurrentEra))
Next m
Console.WriteLine()
Next y
End Sub
End Class
'This code produces the following output.
'
'1421: False False False False False False False False False False False False
'1422: False False False False False False False False False False False False
'1423: False False False False False False False False False False False False
'1424: False False False False False False False False False False False False
'1425: False False False False False False False False False False False False
Комментарии
В каждом 30-летнем цикле, который заканчивается годом, который равномерно делится на 30, 2-й, 5-й, 7-й, 10-й, 13-й, 16-й, 18-й, 21-й, 24-й, 26-й и 29-й годы являются високосными годами. В високосном году 354 дня, а в високосном — 355 дней.
Високосный месяц — это целый месяц, который происходит только в високосном году. Календарь хиджры не имеет никаких високосных месяцев.