根据生日设置星座

using System;
namespace e1
{
    class Program
    {
        static void Main(string[] args)
        {
            Player p = new Player(new DateTime(2018, 4, 3));
            Console.WriteLine(p.ToString());//生日: 2018 - 04 - 03 星座: 白羊座
            Console.ReadKey();
        }
    }
    public class Player
    {
        private static string[] _starName = { "水瓶座", "双鱼座", "白羊座", "金牛座", "双子座", "巨蟹座", "狮子座", "处女座", "天秤座", "天蝎座", "射手座", "魔羯座" };
        private static DateTime[] _starDate = {
new DateTime(2000,1,20),
new DateTime(2000,2,19),
new DateTime(2000,3,21),
new DateTime(2000,4,20),
new DateTime(2000,5,21),
new DateTime(2000,6,22),
new DateTime(2000,7,23),
new DateTime(2000,8,23),
new DateTime(2000,9,23),
new DateTime(2000,10,24),
new DateTime(2000,11,23),
new DateTime(2000,12,22)
};
        /// <summary>
        /// 生日
        /// </summary>
        private DateTime _born;
        public DateTime Born
        {
            get { return _born; }
            set
            {
                _born = value;
                DateTime t = new DateTime(2000, _born.Month, _born.Day);
                int si = 11;
                for (int i = 0; i < 11; i++)
                {
                    if (t >= _starDate[i] && t < _starDate[i + 1])
                    {
                        si = i; break;
                    }
                }
                Star = _starName[si];
            }
        }
        /// <summary>
        /// 星座
        /// </summary>
        public string Star { get; private set; }
        public Player(DateTime Birthday) { Born = Birthday; }

        public override string ToString()
        {
            return $"生日:{Born:yyyy-MM-dd}\t星座:{Star}";
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值