您的位置:首页 > 其它

显示某年某月日历表(客户程序)

2012-09-23 01:13 288 查看
package MONTH;
import javax.swing.*;
public class month {
private int year;
private int month;
private String []every_month={"January","February","March","April","May","June","July","August","September","October","November","December"};
int [] num={31,28,31,30,31,30,31,31,30,31,30,31};
public month()
{
String year1=JOptionPane.showInputDialog("Enter a num");
year=Integer.parseInt(year1);
String month1=JOptionPane.showInputDialog("Enter a num");
month=Integer.parseInt(month1);
}
public void printMonth()
{
printMonthTitle();
printMonthBoby();
}
public void printMonthTitle()
{
System.out.println(" "+getMonth()+" "+year);
System.out.println("--------------------------------------------------");
System.out.printf("%-10s%-10s%-10s%-10s%-10s%-10s%-10s\n","Sun","Mon","Tue","Wed","Thu","Fri","Sat");
}
public String getMonth()
{
return every_month[month-1];
}
public void printMonthBoby()
{
int week=getStartDay();
int days=getNumberOfDaysInMonth(month-1);
int i;
for(i=0;i<week;i++)
System.out.print(" ");
for(i=0;i<days;i++)
{
System.out.printf("%-10d",i+1);
week++;
if((week%7)==0)
System.out.println();
}
System.out.println();
}
public int getStartDay()
{
final int WEEK=3;
int sum_day=getTotalNumberOfDays();
return (sum_day+WEEK)%7;
}
public int getTotalNumberOfDays()
{
int total=0;
for(int i=1800;i<year;i++)
{
if(isLeapYear(i))
total=total+366;
else
total=total+365;
}
for(int j=0;j<month-1;j++)
total=total+getNumberOfDaysInMonth(j);
return total;

}
public int getNumberOfDaysInMonth(int j)
{
if((j==1)&&isLeapYear(year))
return (num[j]+1);
return num[j];
}
public boolean isLeapYear(int i)
{
if((i%4==0&&i%100!=0)||i%400==0)
return true;
return false;
}
}

package MONTH; public class print {

public static void main(String[] args) { month a=new month(); a.printMonth(); }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: