找到休息日,孙工你累吗?

题目:

某公司软件开发工程师孙工,作息规律为上三天班,休息一天,经常不确定休 息日是否周末,为此,请你开发一个程序,当孙工输入年及月,以日历方式显示对 应月份的休息日,用中括号进行标记.同时,统计出本月有几天休息,轮到周末休 息有几天.(注:首次休息日是2019年2月2日)

 

这个任务对于新开始接触日历方法的人来说应该是不好理解的,因为我就是,诶,这一节学的异常的痛苦。但是不怕,没有一个秃头的心怎么做的了一名优秀的程序员。这个任务一开始我自己写,Calender类和方法满天飞,导致自己结构写的乱七八糟还有错误。

看看我写的176行的垃圾,没有办法谁叫咱是小白呢,但是今天分享的不是我的破烂,而是我的老师卡哥的亲笔,我在仔细分析和厚着脸问了以后,终于剖析了点我自认为很明白的结构,分享出来,大家一起学习,话不多说,show!

 

 

首先需要剖析一下任务卡,需要完成的需求是什么。

第一,最明显的需要打印出一个日历来

第二,需要标记出孙工的休息日用[ ]标记出来

第三,需要算出来,孙工在他查询的那个月有几天的休息日,并且休息日有几天在周末

基本需求就是这些,那么就用代码一个个实现

 

这部分没什么可说的,就是输入语句用来给孙工查询用,格式化时间,格式成想要的格式,然后获取你输入的东西,这里的Calendar.DAY_OF_WEEK是根据输入日期在日历的位置自动的返回星期几,输入的是2020-02-01的话正好就是周六。然后根据周几打印前面的空格。这样的话第一条就完成了,根据这些基本加个输出语句就可以打印日历了。

往下就需要去想怎么把孙工的休息日加上[ ] ,这里先写两个计数器,用来后面记有几个休息日,并且这几个休息日有几个在周末

获取当月的最大天数就是为了打印日历,有了开头有了结尾那么打印就没问题了。月日子数定了,那么就需要在整个日子数循环,因为孙工每三天休息一次,那么让日期%4这样的话每个取余等于1 的就被标记了[ ] 。这样的话计数器也发挥了他的作用。

最后就是获取时间戳,获取开始的时间戳,提高精度

 

最后完整代码

最后,我知道我很菜,大家不喜勿喷,重要的是一起学习嘛,有错误的地方欢迎大佬指正。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值