Calendar.IsLeapDay Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
En cas de substitution dans une classe dérivée, détermine si une date est un jour bissextile.
Surcharges
| Nom | Description |
|---|---|
| IsLeapDay(Int32, Int32, Int32) |
Détermine si la date spécifiée dans l’ère actuelle est un jour bissextile. |
| IsLeapDay(Int32, Int32, Int32, Int32) |
En cas de substitution dans une classe dérivée, détermine si la date spécifiée dans l’ère spécifiée est un jour bissextile. |
IsLeapDay(Int32, Int32, Int32)
Détermine si la date spécifiée dans l’ère actuelle est un jour bissextile.
public:
virtual bool IsLeapDay(int year, int month, int day);
public virtual bool IsLeapDay(int year, int month, int day);
abstract member IsLeapDay : int * int * int -> bool
override this.IsLeapDay : int * int * int -> bool
Public Overridable Function IsLeapDay (year As Integer, month As Integer, day As Integer) As Boolean
Paramètres
- year
- Int32
Entier qui représente l’année.
- month
- Int32
Entier positif qui représente le mois.
- day
- Int32
Entier positif qui représente le jour.
Retours
true si le jour spécifié est un jour bissextile ; sinon, false.
Exceptions
year est en dehors de la plage prise en charge par le calendrier.
-ou-
month est en dehors de la plage prise en charge par le calendrier.
-ou-
day est en dehors de la plage prise en charge par le calendrier.
Exemples
L’exemple de code suivant compare différentes implémentations de la Calendar classe.
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.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
End Class
'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
Remarques
Pour faire la différence entre l’année civile et l’heure réelle que la terre fait pivoter autour du soleil ou l’heure réelle que la lune tourne autour de la terre, une année bissextile a un nombre différent de jours d’une année civile standard. Chaque Calendar implémentation définit les années bissextiles différemment.
Un jour bissextile est un jour qui ne se produit que dans une année bissextile. Par exemple, dans le calendrier grégorien, le 29e jour de février est le seul jour bissextile.
Voir aussi
S’applique à
IsLeapDay(Int32, Int32, Int32, Int32)
En cas de substitution dans une classe dérivée, détermine si la date spécifiée dans l’ère spécifiée est un jour bissextile.
public:
abstract bool IsLeapDay(int year, int month, int day, int era);
public abstract bool IsLeapDay(int year, int month, int day, int era);
abstract member IsLeapDay : int * int * int * int -> bool
Public MustOverride Function IsLeapDay (year As Integer, month As Integer, day As Integer, era As Integer) As Boolean
Paramètres
- year
- Int32
Entier qui représente l’année.
- month
- Int32
Entier positif qui représente le mois.
- day
- Int32
Entier positif qui représente le jour.
- era
- Int32
Entier qui représente l’ère.
Retours
true si le jour spécifié est un jour bissextile ; sinon, false.
Exceptions
year est en dehors de la plage prise en charge par le calendrier.
-ou-
month est en dehors de la plage prise en charge par le calendrier.
-ou-
day est en dehors de la plage prise en charge par le calendrier.
-ou-
era est en dehors de la plage prise en charge par le calendrier.
Remarques
Pour faire la différence entre l’année civile et l’heure réelle que la terre fait pivoter autour du soleil ou l’heure réelle que la lune tourne autour de la terre, une année bissextile a un nombre différent de jours d’une année civile standard. Chaque Calendar implémentation définit les années bissextiles différemment.
Un jour bissextile est un jour qui ne se produit que dans une année bissextile. Par exemple, dans le calendrier grégorien, le 29e jour de février est le seul jour bissextile.
Notes pour les responsables de l’implémentation
La classe dérivée doit prendre en charge CurrentEra lorsqu’elle est passée en tant que era paramètre. Une façon de prendre en charge CurrentEra consiste à la remplacer par la valeur stockée dans Eras[0], qui est la valeur de l’ère actuelle du calendrier.
Voir aussi
- CurrentEra
- Eras
- GetMonthsInYear(Int32)
- GetDaysInMonth(Int32, Int32)
- IsLeapYear(Int32)
- IsLeapMonth(Int32, Int32)