Bagikan melalui


JulianCalendar.IsLeapDay(Int32, Int32, Int32, Int32) Metode

Definisi

Menentukan apakah tanggal yang ditentukan dalam era yang ditentukan adalah hari lompatan.

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

Parameter

year
Int32

Bilangan bulat yang mewakili tahun.

month
Int32

Bilangan bulat dari 1 hingga 12 yang mewakili bulan tersebut.

day
Int32

Bilangan bulat dari 1 hingga 31 yang mewakili hari itu.

era
Int32

Bilangan bulat yang mewakili era.

Mengembalikan

true jika hari yang ditentukan adalah hari lompatan; jika tidak, false.

Pengecualian

year berada di luar rentang yang didukung oleh kalender.

-atau-

month berada di luar rentang yang didukung oleh kalender.

-atau-

day berada di luar rentang yang didukung oleh kalender.

-atau-

era berada di luar rentang yang didukung oleh kalender.

Contoh

Contoh berikut memanggil IsLeapDay hari terakhir bulan kedua (Februari) selama lima tahun di setiap era.

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

*/
using System;
using System.Globalization;

public class SamplesJulianCalendar  {

   public static void Main()  {

      // Creates and initializes a JulianCalendar.
      JulianCalendar myCal = new JulianCalendar();

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

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

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

*/
Imports System.Globalization

Public Class SamplesJulianCalendar   
   
   Public Shared Sub Main()

      ' Creates and initializes a JulianCalendar.
      Dim myCal As New JulianCalendar()

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

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

Keterangan

Tidak seperti kalender Gregorian, kalender Julian mendefinisikan tahun kabisat sebagai tahun kabisat yang dapat dibagi secara merata oleh empat tanpa pengecualian. Oleh karena itu, kalender tidak akurat oleh satu hari setiap 128 tahun. Misalnya, tahun 1999 bukan tahun kabut asap, tetapi tahun 2000. Tahun umum memiliki 365 hari dan tahun kaap memiliki 366 hari.

Hari kampung adalah hari yang hanya terjadi pada tahun kampung. Di kalender Julian, hari ke-29 Februari adalah satu-satunya hari kampung.

Berlaku untuk

Lihat juga