程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 用Java編寫日歷程序的思路

用Java編寫日歷程序的思路

編輯:關於JAVA

先顯示一下結果:

基本功能:

可以通過左右按鈕來切換年月,並同時在其下方顯示日期,並且對映相應星期數

使用語言:

純Java語言

需要了解的輔助方面:

java.awt.*;

java.awt.event.*;

javax.swing.*;

------------------------------------

下面開始界面布局:

1.先要有最頂端的布局:,我們命名為calendar_ym

2.要有星期數列的布局:,我們命名為calendar_week

3.要有日期數列的布局:,我們命名為calendar_days

4.最後要有關閉的按鈕:,我們命名為calendar_exit。

明確變量部分:

很明顯,年月一定是要變得,而年月變化,必然引起日期的變化,即calendar_ym和calendar_days是變量組

難點部分:

困難的地方是,如何精確地計算出某年某月某日是星期幾,這是一個很讓人頭疼的事情,下面給出一個公式:

星期計算公式

(年+年/4+年/400-年/100-年基數+月基數+日)/7=……余星期幾

注:式中分數均取整

年基數,平年1,閏年2,

月基數,1、平年:一月0, 二月3, 三月3, 四月6, 五月1, 六月4,

七月0, 八月3, 九月5, 十月0, 十一月3, 十二月5.

2、閏年:一月0, 二月3, 三月4, 四月0, 五月2, 六月5,

七月0, 八月3, 九月6, 十月1, 十一月4, 十二月6.

如:1949年10月1日是星期幾?

(1949+1949/4+1949/400-1949/100-1+0+1)/7

=(1949+487+4-19-1+0+1)/7

=345……6

即該日為星期六。

仔細觀察我們發現,在確定星期數的過程中要判斷該年是否為閏年,如下

判斷閏年方法

1.能被4整除,且不能被100整除

2.能被100整除,且能被400整除

滿足其中一個條件便是閏年

代碼布局:

由上面的分析得知:

1.建立一個關於日期的類,我們稱之為SDate,其方法全部為靜態方法,如下:

boolean isLeap(int year); 判斷該年是否為閏年

intfixDay(int year, int month);返回某年某月1日的星期數

int accountDays(int year,int month);返回某年某月的日期總數

2.建立日歷表的類,我們稱之為DateGrid,查看代碼

本文出自 “博遠至靜” 博客,請務必保留此出處http://sunspot.blog.51cto.com/372554/126751

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved