Udostępnij za pośrednictwem


JapaneseCalendar.IsLeapYear(Int32, Int32) Metoda

Definicja

Określa, czy określony rok w określonej erze jest rokiem przestępnym.

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

Parametry

year
Int32

Liczba całkowita reprezentująca rok.

era
Int32

Liczba całkowita reprezentująca erę.

Zwraca

true, jeśli określony rok jest rokiem przestępnym; w przeciwnym razie , false.

Wyjątki

year znajduje się poza zakresem obsługiwanym przez kalendarz.

-lub-

era znajduje się poza zakresem obsługiwanym przez kalendarz.

Przykłady

Poniższy przykład wywołuje pięć IsLeapYear lat w każdej z epok. Bieżąca era w przykładowych danych wyjściowych to era Reiwa.

using namespace System;
using namespace System::Globalization;

int main()
{   
   // Creates and initializes a JapaneseCalendar.
   JapaneseCalendar^ myCal = gcnew JapaneseCalendar;
   
   // 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++ )
      Console::Write( "\t {0}", myCal->IsLeapYear( y, 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++ )
         Console::Write( "\t {0}", myCal->IsLeapYear( y, 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();

      // 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++ )
         Console.Write( "\t{0}", myCal.IsLeapYear( y, 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++ )
            Console.Write( "\t{0}", myCal.IsLeapYear( y, 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()

      ' Displays the header.
      Console.Write("YEAR" + ControlChars.Tab)
      Dim y As Integer
      For y = 1 To 5
         Console.Write(ControlChars.Tab + "{0}", y)
      Next
      Console.WriteLine()

      ' Checks five years in the current era.
      Console.Write("CurrentEra:")
      For y = 1 To 5
         Console.Write(ControlChars.Tab + "{0}", myCal.IsLeapYear(y, JapaneseCalendar.CurrentEra))
      Next
      Console.WriteLine()

      ' Checks five years in each of the eras.
      For i As Integer = 0 To myCal.Eras.Length - 1
         Console.Write("Era {0}:" + ControlChars.Tab, myCal.Eras(i))
         For y = 1 To 5
            Console.Write(ControlChars.Tab + "{0}", myCal.IsLeapYear(y, myCal.Eras(i)))
         Next
         Console.WriteLine()
      Next 
   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

Uwagi

Lata przestępne w kalendarzu japońskim odpowiadają tym samym latom przestępnym w kalendarzu gregoriańskim. Rok przestępny w kalendarzu gregoriańskim jest definiowany jako rok gregoriański, który jest równomiernie podzielny przez cztery, z wyjątkiem tego, czy jest podzielny przez 100. Jednak lata gregoriańskie, które są podzielne przez 400 lat, to lata przestępne. Wspólny rok ma 365 dni, a rok przestępny ma 366 dni.

Dotyczy

Zobacz też