UmAlQuraCalendar.GetDaysInYear(Int32, Int32) 메서드

정의

지정된 연대에 있는 지정된 연도의 일 수를 계산합니다.

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

매개 변수

year
Int32

연도입니다.

era
Int32

연대입니다. UmAlQuraCalendar.Eras[UmAlQuraCalendar.CurrentEra] 또는 UmAlQuraEra를 지정합니다.

반환

지정된 연도 및 연대의 일수입니다. 평년의 일 수는 354일이고 윤년의 일 수는 355일입니다.

예외

year 또는 eraUmAlQuraCalendar 클래스에서 지원하는 범위 밖에 있는 경우

예제

다음 예제에서는 메서드를 GetDaysInYear 호출하여 클래스에서 지원하는 UmAlQuraCalendar 각 시대에 10년 연속으로 일 수를 가져옵니다.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      Calendar cal = new UmAlQuraCalendar();
      int currentYear = cal.GetYear(DateTime.Now);

      Console.WriteLine("Era     Year     Days\n");
      foreach (int era in cal.Eras) {
         for (int year = currentYear; year <= currentYear + 9; year++) {
            Console.WriteLine("{0}{1}      {2}      {3}",
                              ShowCurrentEra(cal, era), era, year,
                              cal.GetDaysInYear(year, era));
         }
      }
      Console.WriteLine("\n   * Indicates the current era.");
   }

   private static string ShowCurrentEra(Calendar cal, int era)
   {
      if (era == cal.Eras[Calendar.CurrentEra])
         return "*";
      else
         return " ";
   }
}
// The example displays the following output:
//       Era     Year     Days
//
//       *1      1431      354
//       *1      1432      354
//       *1      1433      355
//       *1      1434      354
//       *1      1435      355
//       *1      1436      354
//       *1      1437      354
//       *1      1438      354
//       *1      1439      355
//       *1      1440      354
//
//          * Indicates the current era.
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim cal As New UmAlQuraCalendar()
      Dim currentYear As Integer = cal.GetYear(Date.Now)
      
      Console.WriteLine("Era     Year     Days")
      Console.WriteLine()
      For Each era As Integer In cal.Eras
         For year As Integer = currentYear To currentYear + 9
            Console.WriteLine("{0}{1}      {2}      {3}", 
                              ShowCurrentEra(cal, era), era, year, 
                              cal.GetDaysInYear(year, era))   
         Next     
      Next   
      Console.WriteLine()
      Console.WriteLine("   * Indicates the current era.")
   End Sub
   
   Private Function ShowCurrentEra(cal As Calendar, era As Integer) As String
      If era = cal.Eras(Calendar.CurrentEra) Then
         Return "*"
      Else
         Return " "
      End If   
   End Function
End Module
' The example displays the following output:
'       Era     Year     Days
'       
'       *1      1431      354
'       *1      1432      354
'       *1      1433      355
'       *1      1434      354
'       *1      1435      355
'       *1      1436      354
'       *1      1437      354
'       *1      1438      354
'       *1      1439      355
'       *1      1440      354
'       
'          * Indicates the current era.

적용 대상

추가 정보