Condividi tramite


JapaneseCalendar.IsLeapDay(Int32, Int32, Int32, Int32) Metodo

Definizione

Determina se la data specificata nell'era specificata corrisponde a un giorno intercalare.

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

Parametri

year
Int32

Valore intero che rappresenta l'anno.

month
Int32

Valore intero compreso tra 1 e 12 che rappresenta il mese.

day
Int32

Valore intero compreso tra 1 e 31 che rappresenta il giorno.

era
Int32

Valore intero che rappresenta l'era.

Restituisce

true se il giorno specificato è intercalare; in caso contrario, false.

Eccezioni

year non è compreso nell'intervallo supportato dal calendario.

-oppure-

month non è compreso nell'intervallo supportato dal calendario.

-oppure-

day non è compreso nell'intervallo supportato dal calendario.

-oppure-

era non è compreso nell'intervallo supportato dal calendario.

Esempio

Nell'esempio seguente viene chiamato IsLeapDay l'ultimo giorno del secondo mese (febbraio) per cinque anni in ognuna delle ere. L'era corrente nell'output di esempio è l'era Reiwa.


using namespace System;
using namespace System::Globalization;

int main()
{
   // Creates and initializes a JapaneseCalendar.
   JapaneseCalendar^ myCal = gcnew JapaneseCalendar;
   
   // Creates a holder for the last day of the second month (February)->
   int iLastDay;
   
   // Displays the header.
   Console::Write( "YEAR\t" );
   for ( int y = 1; y <= 5; y++ )
      Console::Write( "\t {0}", y );
   Console::WriteLine();
   
   // Checks five years in the current era.
   Console::Write( "CurrentEra:" );
   for ( int y = 1; y <= 5; y++ )
   {
      iLastDay = myCal->GetDaysInMonth( y, 2, JapaneseCalendar::CurrentEra );
      Console::Write( "\t {0}", myCal->IsLeapDay( y, 2, iLastDay, JapaneseCalendar::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 = 1; y <= 5; 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            1       2       3       4       5
CurrentEra:     False   True    False   False   False
Era 5:          False   True    False   False   False
Era 4:          False   False   False   True    False
Era 3:          False   False   True    False   False
Era 2:          True    False   False   False   True
Era 1:          True    False   False   False   True

*/
using System;
using System.Globalization;

public class SamplesJapaneseCalendar
{
   public static void Main()
   {
      // Creates and initializes a JapaneseCalendar.
      JapaneseCalendar myCal = new JapaneseCalendar();

      // Creates a holder for the last day of the second month (February).
      int iLastDay;

      // Displays the header.
      Console.Write( "YEAR\t" );
      for ( int y = 1; y <= 5; y++ )
         Console.Write( "\t{0}", y );
      Console.WriteLine();

      // Checks five years in the current era.
      Console.Write( "CurrentEra:" );
      for ( int y = 1; y <= 5; y++ )  {
         iLastDay = myCal.GetDaysInMonth( y, 2, JapaneseCalendar.CurrentEra );
         Console.Write( "\t{0}", myCal.IsLeapDay( y, 2, iLastDay, JapaneseCalendar.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 = 1; y <= 5; 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            1       2       3       4       5
CurrentEra:     False   True    False   False   False
Era 5:          False   True    False   False   False
Era 4:          False   False   False   True    False
Era 3:          False   False   True    False   False
Era 2:          True    False   False   False   True
Era 1:          True    False   False   False   True

*/
Imports System.Globalization

Public Class SamplesJapaneseCalendar   
   Public Shared Sub Main()
      ' Creates and initializes a JapaneseCalendar.
      Dim myCal As New JapaneseCalendar()

      ' 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 = 1 To 5
         Console.Write(ControlChars.Tab + "{0}", y)
      Next y
      Console.WriteLine()

      ' Checks five years in the current era.
      Console.Write("CurrentEra:")
      For y = 1 To 5
         iLastDay = myCal.GetDaysInMonth(y, 2, JapaneseCalendar.CurrentEra)
         Console.Write(ControlChars.Tab + "{0}", myCal.IsLeapDay(y, 2, iLastDay, JapaneseCalendar.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 = 1 To 5
            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            1       2       3       4       5
'      CurrentEra:     False   True    False   False   False
'      Era 5:          False   True    False   False   False
'      Era 4:          False   False   False   True    False
'      Era 3:          False   False   True    False   False
'      Era 2:          True    False   False   False   True
'      Era 1:          True    False   False   False   True

Commenti

Gli anni bisestili nel calendario giapponese corrispondono agli stessi anni intercalare nel calendario gregoriano. Un anno bisestile nel calendario gregoriano è definito come anno gregoriano che è divisibile in modo uniforme per quattro, tranne se è divisibile per 100. Tuttavia, gli anni gregoriani divisibili per 400 sono anni bisestili. Un anno comune ha 365 giorni e un anno bisestile ha 366 giorni.

Un giorno bisestile è un giorno che si verifica solo in un anno bisestile. Ad esempio, il 29° giorno di Nigatsu (febbraio) è l'unico giorno bisestile.

Si applica a

Vedi anche