All Implemented Interfaces:
Almanac, Culture

public class LunarMonth extends Loops
农历月
Since:
Java 17+
Author:
Kimi Liu
  • Field Details

    • NAMES

      public static final String[] NAMES
    • year

      protected LunarYear year
      农历年
    • month

      protected int month
    • leap

      protected boolean leap
      是否闰月
    • dayCount

      protected int dayCount
      天数
    • indexInYear

      protected int indexInYear
      位于当年的索引,0-12
    • firstJulianDay

      protected JulianDay firstJulianDay
      初一的儒略日
  • Constructor Details

    • LunarMonth

      public LunarMonth(int year, int month)
  • Method Details

    • fromYm

      public static LunarMonth fromYm(int year, int month)
      从农历年月初始化
      Parameters:
      year - 农历年
      month - 农历月,闰月为负
      Returns:
      农历月
    • getLunarYear

      public LunarYear getLunarYear()
      农历年
      Returns:
      农历年
    • getYear

      public int getYear()
      Returns:
    • getMonth

      public int getMonth()
      Returns:
    • getMonthWithLeap

      public int getMonthWithLeap()
      Returns:
      月,当月为闰月时,返回负数
    • getDayCount

      public int getDayCount()
      天数(大月30天,小月29天)
      Returns:
      天数
    • getIndexInYear

      public int getIndexInYear()
      位于当年的索引(0-12)
      Returns:
      索引
    • getSeason

      public LunarSeason getSeason()
      农历季节
      Returns:
      农历季节
    • getFirstJulianDay

      public JulianDay getFirstJulianDay()
      初一的儒略日
      Returns:
      儒略日
    • isLeap

      public boolean isLeap()
      是否闰月
      Returns:
      true/false
    • getWeekCount

      public int getWeekCount(int start)
      周数
      Parameters:
      start - 起始星期,1234560分别代表星期一至星期天
      Returns:
      周数
    • getName

      public String getName()
      依据国家标准《农历的编算和颁行》GB/T 33661-2017中农历月的命名方法。
      Returns:
      名称
    • toString

      public String toString()
      Overrides:
      toString in class Tradition
    • next

      public LunarMonth next(int n)
      Description copied from interface: Culture
      推移
      Parameters:
      n - 推移步数
      Returns:
      this
    • getDays

      public List<LunarDay> getDays()
      获取本月的农历日列表
      Returns:
      农历日列表
    • getWeeks

      public List<LunarWeek> getWeeks(int start)
      获取本月的农历周列表
      Parameters:
      start - 星期几作为一周的开始,1234560分别代表星期一至星期天
      Returns:
      周列表
    • getSixtyCycle

      public SixtyCycle getSixtyCycle()
      干支
      Returns:
      干支
    • getNineStar

      public NineStar getNineStar()
      九星
      Returns:
      九星
    • getJupiterDirection

      public Direction getJupiterDirection()
      太岁方位
      Returns:
      方位
    • getFetus

      public FetusMonth getFetus()
      逐月胎神
      Returns:
      逐月胎神
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Tradition