温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

获取某年某月的工作日天数

发布时间:2020-06-24 11:29:24 来源:网络 阅读:638 作者:小天小闹 栏目:编程语言

请允许我跑提一下,实在是淡定不住了,我一哥们找到女朋友了,哇嘎嘎。不管咋地,终于又一个人智商负数啦。。。

 

小道理:跳出技术“偷懒”有时候能带来意想不到的收获

和别人聊天,才知道原来有更多更好更简洁的方法去实现,说白了,就是更懒

 

以下是我的笨方法

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

/// <summary>
       /// 计算指定年月的工作日天数
       /// </summary>
       /// <param name="year">年</param>
       /// <param name="month">月</param>
       /// <returns>返回一个整数类型的list,第一位是全部工作天数,第二位是工作日天数</returns>      
       private List<int> WorkDaysOfyearmonth(int year, int month)
       {
           int alldays = DateTime.DaysInMonth(year, month);

           int workday = alldays;
           DateTime indata;
           for (int i = 1; i <= alldays; i++)
           {
               indata = Convert.ToDateTime(year.ToString() + "/" + month.ToString() + "/" + i.ToString());
               if (indata.DayOfWeek == DayOfWeek.Sunday || indata.DayOfWeek == DayOfWeek.Saturday)
               {
                   workday--;
               }
           }
           List&lt;int> templist = new List<int>() { alldays, workday };
           return templist;

       }

 

下面是被人的思路~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1.

简单的先搞一个数据库吧 熟悉

一个字段Data 放2012年得日期

一个字段Bool类型

放是否为假期

然后按照月分组 条件为bool类型为真

一次维护进去3年得

这样没有逻辑代码了。。。

纯数据库操作就可以去到精确地指定月的工作日

 

2.

XML的话需要些一些判断方法了 不过也不是很难吧

实际上好像还有种更Open的 

hash数表保存到内存 那速度刚刚的
或者你手动写1月23天 2月20天。。。

一年12条数据。。。

思路好多哦

但是这种方案的弊端在于本月截止到目前为止多少工作日了没法计算

 

~~~~~~~~~~~~~~~~~~~~~~~~不管咋地  都是思路

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI