Flutter——Dart中实现根据传入日期DateTime返回对应的星座

///根据日期,返回星座
  static String getConstellation(DateTime birthday) {
    final String capricorn = '摩羯座'; //Capricorn 摩羯座(12月22日~1月20日)
    final String aquarius = '水瓶座'; //Aquarius 水瓶座(1月21日~2月19日)
    final String pisces = '双鱼座'; //Pisces 双鱼座(2月20日~3月20日)
    final String aries = '白羊座'; //3月21日~4月20日
    final String taurus = '金牛座'; //4月21~5月21日
    final String gemini = '双子座'; //5月22日~6月21日
    final String cancer = '巨蟹座'; //Cancer 巨蟹座(6月22日~7月22日)
    final String leo = '狮子座'; //Leo 狮子座(7月23日~8月23日)
    final String virgo = '处女座'; //Virgo 处女座(8月24日~9月23日)
    final String libra = '天秤座'; //Libra 天秤座(9月24日~10月23日)
    final String scorpio = '天蝎座'; //Scorpio 天蝎座(10月24日~11月22日)
    final String sagittarius = '射手座'; //Sagittarius 射手座(11月23日~12月21日)

    int month = birthday.month;
    int day = birthday.day;
    String constellation = '';

    switch (month) {
      case DateTime.january:
        constellation = day < 21 ? capricorn : aquarius;
        break;
      case DateTime.february:
        constellation = day < 20 ? aquarius : pisces;
        break;
      case DateTime.march:
        constellation = day < 21 ? pisces : aries;
        break;
      case DateTime.april:
        constellation = day < 21 ? aries : taurus;
        break;
      case DateTime.may:
        constellation = day < 22 ? taurus : gemini;
        break;
      case DateTime.june:
        constellation = day < 22 ? gemini : cancer;
        break;
      case DateTime.july:
        constellation = day < 23 ? cancer : leo;
        break;
      case DateTime.august:
        constellation = day < 24 ? leo : virgo;
        break;
      case DateTime.september:
        constellation = day < 24 ? virgo : libra;
        break;
      case DateTime.october:
        constellation = day < 24 ? libra : scorpio;
        break;
      case DateTime.november:
        constellation = day < 23 ? scorpio : sagittarius;
        break;
      case DateTime.december:
        constellation = day < 22 ? sagittarius : capricorn;
        break;
    }

    return constellation;
  }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值