Java基礎(chǔ)之打印萬年歷的簡單實現(xiàn)(案例)
問題:輸入年,月,打印對應(yīng)年月的日歷。
示例:
問題分析:
1,首先1970年是Unix系統(tǒng)誕生的時間,1970年成為Unix的元年,1970年1月1號是星期四,現(xiàn)在大多的手機的日歷功能只能顯示到1970年1月1日這一天;
2,要想打印某年某月的日歷,首先應(yīng)該計算出這個月1號是星期幾?
解決1號是星期幾?
2.1:先計算出年天數(shù),即截至這一年1月1號的天數(shù),用for循環(huán),從1970年開始,閏年+366,平年+365;
2.2:計算出月天數(shù),即截至本月1號的天數(shù),用for循環(huán),從1月份開始,算出月天數(shù);
2.1.1:用到閏年判斷,用switch來判斷返回月天數(shù);
2.3:用年天數(shù)加月天數(shù),求得本月1號距離1970年1月1號的總天數(shù),用總天數(shù)來判斷本月1號是星期幾;
3,判斷本月的總天數(shù)(用到switch語句);
4,打印日歷;
代碼實現(xiàn):
一個函數(shù)實現(xiàn)打印PrintTitle();即實現(xiàn)固定的頭部部分;
實現(xiàn)Print(參數(shù)1,參數(shù)2,參數(shù)3);即實現(xiàn)打印日歷主題部分;
參數(shù)1(計算總天數(shù)):計算年天數(shù),計算月天數(shù);
參數(shù)2傳遞年份;
參數(shù)3傳遞月份;
判斷閏年設(shè)置獨立函數(shù);
總結(jié):
解決問題前一定要先分析問題,把大問題逐步分成小問題,理清邏輯,實現(xiàn)小問題的邏輯,整個問題就已經(jīng)實現(xiàn)了百分之八十;
自下而上,逐步實現(xiàn),函數(shù)獨立調(diào)用;
代碼實現(xiàn)部分:
-
-------------------
----
--------
--------
--------
--------
以上這篇Java基礎(chǔ)之打印萬年歷的簡單實現(xiàn)(案例)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java synchronized底層的實現(xiàn)原理
這篇文章主要介紹了Java synchronized底層的實現(xiàn)原理,文章基于Java來介紹 synchronized 是如何運行的,內(nèi)容詳細(xì)具有一定的參考價值,需要的小伙伴可以參考一下2022-05-05Java 采用反射獲取class屬性值的實現(xiàn)代碼
以下是對在Java中采用反射獲取class屬性值的實現(xiàn)代碼進(jìn)行了分析介紹,需要的朋友可以過來參考下2013-08-08使用Mybatis Plus整合多數(shù)據(jù)源和讀寫分離的詳細(xì)過程
這篇文章主要介紹了Mybatis Plus整合多數(shù)據(jù)源和讀寫分離的詳細(xì)過程,mybatisplus可以整合阿里的分布式事務(wù)組件seata,本文通過示例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2021-09-09擴展Hibernate使用自定義數(shù)據(jù)庫連接池的方法
這篇文章主要介紹了擴展Hibernate使用自定義數(shù)據(jù)庫連接池的方法,涉及Hibernate數(shù)據(jù)庫操作擴展的相關(guān)技巧,需要的朋友可以參考下2016-03-03idea項目debug模式啟動,斷點失效,斷點紅點內(nèi)無對勾問題及解決
這篇文章主要介紹了idea項目debug模式啟動,斷點失效,斷點紅點內(nèi)無對勾問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-10-10使用Mybatis的Batch?Insert?Support?實現(xiàn)批量插入
這篇文章主要介紹了使用Mybatis的Batch?Insert?Support?實現(xiàn)批量插入。具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07