private GetHebrewYearType ( int year, int era ) : int | ||
year | int | |
era | int | |
return | int |
internal int GetHebrewYearType(int year, int era) {
CheckHebrewYearValue(year, era, "year");
// The m_HebrewTable is indexed by Gregorian year and starts from FirstGregorianYear.
// So we need to convert year (Hebrew year value) to Gregorian Year below.
return (m_HebrewTable[(year - HebrewYearOf1AD - FirstGregorianTableYear) * 2 + 1]);
}
/// <summary>返回指定纪元中指定年份的天数。</summary> /// <returns>指定纪元中指定年份的天数。</returns> /// <param name="year">表示年份的整数。</param> /// <param name="era">表示纪元的整数。指定 <see cref="F:System.Globalization.HebrewCalendar.HebrewEra" /> 或 HebrewCalendar.Eras[Calendar.CurrentEra]。</param> /// <exception cref="T:System.ArgumentOutOfRangeException"> /// <paramref name="year" /> 或 <paramref name="era" /> 超出了当前 <see cref="T:System.Globalization.HebrewCalendar" /> 对象支持的范围。</exception> public override int GetDaysInYear(int year, int era) { HebrewCalendar.CheckEraRange(era); int hebrewYearType = HebrewCalendar.GetHebrewYearType(year, era); if (hebrewYearType < 4) { return(352 + hebrewYearType); } return(382 + (hebrewYearType - 3)); }